shell ssh远程执行命令
Posted 逍遥子
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了shell ssh远程执行命令相关的知识,希望对你有一定的参考价值。
[[email protected] shell]# vi backup.sh #!/bin/sh ipAddress=172.17.167.38 ssh -tt [email protected]$ipAddress -p 22 << remotessh source /shell/backup.sh exit remotessh find /backups/ -ctime +7 -exec rm -fv {} \; ls /backups/
注意:如果ssh没加tt参数(表示不为这个连接分配TTY,这里非得用两个tt才不会报错),可能会报Pseudo-terminal will not be allocated because stdin is not a terminal的错
所有shh参数如下:
-1:强制使用ssh协议版本1; -2:强制使用ssh协议版本2; -4:强制使用IPv4地址; -6:强制使用IPv6地址; -A:开启认证代理连接转发功能; -a:关闭认证代理连接转发功能; -b:使用本机指定地址作为对应连接的源ip地址; -C:请求压缩所有数据; -F:指定ssh指令的配置文件; -f:后台执行ssh指令; -g:允许远程主机连接主机的转发端口; -i:指定身份文件; -l:指定连接远程服务器登录用户名; -N:不执行远程指令; -o:指定配置选项; -p:指定远程服务器上的端口; -q:静默模式; -X:开启X11转发功能; -x:关闭X11转发功能; -y:开启信任X11转发功能。 -n:表示只连接远程主机,不打开远程shell; -t:表示不为这个连接分配TTY
以上是关于shell ssh远程执行命令的主要内容,如果未能解决你的问题,请参考以下文章
利用shell脚本执行ssh远程另一台主机执行命令并返回命令的结果集