我有一个交互式shell脚本,该脚本需要在某个地方SSH到另一台计算机(基于Ubuntu)并以root身份执行某些操作(用户应输入密码,但远程命令应按脚本中所述运行):
# ...
ssh remote-machine 'sudo ls'
# ...
但是,我总是收到此错误消息:
sudo: no tty present and no askpass program specified
好,那很清楚。但是我该如何规避呢?这样的事情应该发生:
$ ssh remote-machine 'sudo ls /'
[sudo] password for user1:
/bin
/etc
/var
ls
例如,输出将包含\ r \ n结尾。