linux 下如何通過ssh到其他機器然後執行命令?

在Linux下經常寫shell腳本,當然少不了需要在各臺機器上執行命令了。

假如現在我要在10.2.226.201上寫shell並且運行這個shell腳本。可是這個腳本需要在10.2.226.202和10.2.226.203上運行一下命令。如何實現呢?

摸索了幾種方法,可是感覺最簡單的方法就是通過SSH了。如何實現呢?

 

1. 在上面三臺機器上分別配置用戶ssh等效性連接。(注意:在所有機器上都要執行下面的操作)

 cd  /home/用戶名

ssh-keygen

ssh-copy-id -i .ssh/id_rsa.pub hostname01

ssh-copy-id -i .ssh/id_rsa.pub hostname02

ssh-copy-id -i .ssh/id_rsa.pub hostname03

SSH等效性連接提供了一種在集羣中其他主機上覆制文件和執行程序時不需要口令提示的安全方式。

 

2.配置好SSH等效性連接後,在這三臺機器上覆制文件和執行程序就不在需要口令了。當然ssh過去也是不需要口令的。

我在10.2.226.201上寫的腳步如何在其他機器上執行命名呢?

如果我連到另一臺機器上只是執行一個命令可以這樣寫:

ssh [email protected]  cd /opt/

如果我連到另一臺機器上執行多於一個命令可以這樣寫:

ssh [email protected] "cd /opt/;pwd"

注意:當多於兩個命令時,一定要把所有命令以分號的方式寫在雙引號裏面。

 

3. 沒有第三步了。

 

 

 

 

 

 

 

發佈了25 篇原創文章 · 獲贊 11 · 訪問量 11萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章