1. 程式人生 > >shell ssh遠程執行命令

shell ssh遠程執行命令

地址 ipaddress class 遠程執行 add cat ack backups ipad

[root@backup shell]# vi backup.sh 

#!/bin/sh
  ipAddress=172.17.167.38
  ssh -tt  root@$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遠程執行命令