我正在尝试使用 ssh 在远程计算机上运行脚本并接收结果,我尝试过:
sh -c "ssh 192.168.2.202 /etc/my_script.sh arg1 arg2 > result.txt 2>/dev/null "
正如这个答案中所建议的通过 ssh 重定向标准输出但如果我不重定向 STDERR 我会得到:
shell-init: error retrieving current directory: getcwd: cannot access parent directories: Inappropriate ioctl for device
有没有更好的办法 ?最后,我需要从程序内部运行 ssh - 通过系统调用,并能够在文件或变量中接收结果注意:连接到一个 uProcessor,该 uProcessor 具有加载了 dropbear ssh 的瘦 Linux ubunto
答案1
这有效:
ssh user@host "<cmd> > output.txt 2>/dev/null"
我相信您遇到的问题是无法隔离发送到 SSH shell 的命令与“sh -c”解释的参数。