0
我想创建某种sftp服务器的ping,并在连接失败时报告python3。Python3子进程在旧shell中执行命令 - sftp问题
,我想执行的命令是这样的一个:
sftp -P port [email protected] <<<exit> /dev/null 2>&1
它,当我用我所有的外壳在本地执行它的工作原理(SH 4.3时,bash,zsh中)上拱,当我执行工作它在subprocess.check_call([command],shell = True)中(也在我的计算机上),但它在服务器上不起作用,因为check_call使用/ bin/sh,并且安装的版本不允许重定向,如“< < <退出“。
我得到这个错误:/ bin/sh的:1:语法错误:重定向意外
我真的需要传递到过程中的“退出”的关键字,一旦它被连接到SFTP自动关闭连接。为此,我需要找到正确的命令传递给旧的/ bin/sh或告诉子进程使用/ bin/bash而不是/ bin/sh。
有人知道我该如何解决这个问题?
服务器3.16.0-60泛型#80〜14.04.1 Ubuntu的
非常感谢你。