我想从远程计算机运行一个简单的脚本。该脚本包含以下内容:
#!/usr/bin/python
import os
print str(os.popen('stty size', 'r').read())
如果我从本地机器运行它,我会得到很好的输出,比如36 138
。如果我尝试从另一台机器运行它,我会得到<ip>: stty: standard input: Invalid argument
(使用ssh ot pdsh)。
问题是我无法更改使用stty命令的脚本。这是一个常见的脚本,我编写了包装器。 建议?
答案 0 :(得分:3)
正如BroSlow所说,如果使用ssh -t
,ssh
将解决问题。
如果通过pdsh
使用ssh
,我使用了以下内容:
export PDSH_SSH_ARGS_APPEND="-tt -q"
pdsh -w ${machine_list} -S -R ssh ${cmd}
PDSH_SSH_ARGS_APPEND
用于将参数附加到pdsh
生成的ssh命令,如名称提示。