我希望通过ssh执行一些程序,并将其输入重定向到文件。以下代码的行为是:
```bash ssh user@host 'program < file' ```
这将在远程主机上启动名为“program”的程序,并从名为“file”的文件中读取输入。
应该等同于(假设使用公钥身份验证):
```bash ssh user@host 'program < file' ```
这将在远程主机上启动名为“program”的程序,并从名为“file”的文件中读取输入。
channel.exec_command('cat')
with open('mumu', 'r') as f:
text = f.read()
nbytes = 0
while nbytes < len(text):
sent = channel.send(text[nbytes:])
if sent == 0:
break
nbytes += sent
应该等同于(假设使用公钥身份验证):
ssh user@host cat < mumu
然而,应用程序会挂起并等待更多输入。我认为这是因为stdin流从未关闭。我该怎么做?