我需要在远程linux机器上执行shell脚本。你知道有哪些工具可以帮助我做到这一点吗?
谢谢,
答案 0 :(得分:3)
您可以通过ssh连接传递命令作为参数:
ssh user@remote.ip.address "~/myscript.sh"
要在没有密码的情况下连接,请使用ssh密钥。要使用密钥,您必须使用以下命令在您的计算机上生成一对:
ssh-keygen
然后获取文件〜/ .ssh / id_rsa.pub(或id_dsa.pub,如果你在ssh-keygen中使用参数-t dsa)的内容,并输入remote_machine的〜/ .ssh / authorized_keys文件。 .ssh目录必须拥有权限700。
答案 1 :(得分:1)
对于Python,您可以使用Paramiko通过SSH在远程计算机上运行命令。
答案 2 :(得分:0)
在终止ssh连接之前无需等待远程脚本完成无密码远程执行:
ssh -i ~/.ssh/id_rsa user@remote nohup sh /path/to/script.sh > /dev/null 2>&1 &
答案 3 :(得分:0)
ssh remotePassword@remoteHost < localScript.sh
ssh remotePassword@remoteHost "remoteScript.sh"