我在Python中运行ssh,没有使用像Paramiko这样的外部库。我有理由这样做,而不是通过外部库。
基本上我是在做subprocess.Popen("ssh -t bla -- command")
执行此操作时,我收到以下消息:
Pseudo-terminal will not be allocated because stdin is not a terminal.
我之所以使用-t运行它,是因为我希望远程命令在终止我的python脚本时终止。
当我尝试使用-t -t (强制)时,我得到以下消息:
tcgetattr: Inappropriate ioctl for d
我正在从crontab运行一个脚本,该脚本将只运行ssh,然后运行一个命令并将结果存储在一个文件中。
似乎失败的功能是subprocess.popen。
下面是python函数:
def _executeSSHCommand(sshcommand,user,node):
'''
Simple function to execute an ssh command on a remote node.
'''
sshunixcmd = '/usr/bin/ssh %s@%s \'%s\'
我在Python中有一个使用子进程和Popen的程序,但是当我运行一个名为itnl/itunnel的iOS工具时,它会使终端窗口保持打开状态,以便进行日志记录,因此我不能向该终端写入任何进一步的命令,比如ssh命令。
我曾尝试过各种选项,包括我在另一个SO线程中找到的creationflags,但它似乎在OSX上不起作用。
在自制安装上运行OSX和python2.7。
if ("iPhone" in stdout or "iPad" in stdout):
self.progressBox.AppendText('Device found
我的Python脚本有一个奇怪的问题。当我通过命令行python /home/myname/myscriptname.py运行它时,它返回我期望的正确的值。
这是我的cron命令- 10 * * * * /usr/bin/python /home/myname/myscriptname.py
当运行cron时,我得到以下输出(不正确)-
('', None)
Module not enabled
当我通过命令行运行它时,我得到以下结果(正确)-
The following people have the module enabled:
person1
person2
pers