對ssh操作遠程主機的部分認知

通過互信後,可使用ssh命令直接操作遠程主句,如:

# ls
123              cpu_info                      nagios-plugins-2.1.1
# ssh [email protected] "ls"
anaconda-ks.cfg
nagios-4.1.1.tar.gz
nagios-plugins-2.1.1

如上,通過命令ssh [email protected] "ls"可在遠程主機運行命令。

# export LS=ls
# ssh [email protected] "$LS"
# ssh [email protected] "export LS=ls ; $LS"
anaconda-ks.cfg
nagios-4.1.1.tar.gz
nagios-plugins-2.1.1

如上,通過# export LS=ls # ssh [email protected] "$LS"命令形式無法在遠程主機上運行命令,畢竟LS變量是定義在本地的,遠程主機並沒有定義。但通過ssh [email protected] "export LS=ls ; $LS"命令可在遠程主機上執行命令,在此命令中定義了LS變量,在此通過分號分隔可執行第二條命令。

# ssh [email protected] "export LS=ls ; $LS"
anaconda-ks.cfg
nagios-4.1.1.tar.gz
nagios-plugins-2.1.1
# ssh [email protected] "$LS"

如上可看出# ssh [email protected] "$LS"命令在此沒有結果,因爲當ssh退出後LS變量也就失效了,也因爲這個原因,目前寫的一個自動化腳本寫的相對繁瑣,重複代碼過多,暫時還沒想到好的解決方案。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章