想知道是否可以编写这样的shell脚本,如果可能的话,我可以参考任何参考/示例实现?感谢。
我试过了:
scp ~/Downloads/data/1.dat root@host:/root/data /root/exercise/test /root/data/1.dat
答案 0 :(得分:1)
您可以使用ssh
执行命令,例如:
$ ssh user@host ls -la
将作为host
连接到主机user
,并在成功授权后执行ls -la
命令,在本地显示输出。命令完成后,连接将被关闭。
答案 1 :(得分:1)
我知道您要将文件复制到远程计算机,使用该文件作为参数运行命令,并在本地计算机上获取输出。显然,您需要远程计算机上的test
程序。
你的尝试将你带到了一半。你可以这样做:
scp ~/Downloads/data/1.dat root@host:/root/data
ssh root@host '/root/exercise/test /root/data/1.dat'
第一个命令复制文件,第二个命令在远程计算机上运行命令。根据{{1}}命令,您可以将新的输出文件返回到本地计算机:
test
或者,如果命令写入标准输出,则可以通过将scp root@host:/root/results/outputfile .
附加到ssh命令然后将其重新定向到本地计算机,将输出重定向到远程计算机上的文件。