當前位置:首頁 » 編程軟體 » shell遠程執行腳本

shell遠程執行腳本

發布時間: 2022-04-26 01:30:11

1. shell本地腳本調用遠程腳本,當遠程腳本執行完再繼續執行本地腳本

#!/bin/bash

#調用expect腳本執行遠程sh
expect-c'
settimeout10000
spawnsshusr@ip
expect{
"yes/no"{send"yes ";exp_continue}
"*assword"{send"passwd "}
}
expect"#"
send"sh1 "
expect"#"
'
echo
ls-l

其中timeout時間需要設置足夠長,不然會連接超時斷掉。

或者你配置了rsh,可以把上面的expect過程替換成rsh [Host] [-l UserName] [-n] [Command]

2. 怎樣寫一個本地shell腳本來遠程主機上的shell腳本

安裝CentOS下安裝命令很簡單,如下sudoyuminstallexpect至於Mac用戶,可以通過homebrew安裝(需要先安裝homebrew,請自行Google)brewinstallexpect測試腳本我們寫一個簡單的腳本實現scp拷貝文件,在腳本里配置密碼,保存為scp.exp如下#!/usr/bin/expectsettimeout20if{[llength$argv]<2}{puts"Usage:"puts"$argv0local_fileremote_path"exit1}setlocal_file[lindex$argv0]setremote_path[lindex$argv1]setpasswdyour_passwdsetpasswderror0spawnscp$local_file$remote_pathexpect{"*assword:*"{if{$passwderror==1}{puts"passwdiserror"exit2}"$passwd\r"exp_continue}"*es/no)?*"{send"yes\r"exp_continue}timeout{puts"connectistimeout"exit3}}注意,第一行很重要,通常我們的腳本里第一行是#!/bin/bash,而這里是你機器上expect程序的路徑,說明這段腳本是由expect來解釋執行的,而不是由bash解釋執行,所以代碼的語法和shell腳本也是不一樣的,其中setpasswdyour_passwd設置成你自己的密碼,然後執行如下命令./scp.exp./local_fileuser@host:/xx/yy/執行前確保scp.exp有執行許可權,第一個參數為你本地文件,第二個為遠程主機的目錄,運行腳本如果報錯「connectistimeout」,可以把超時設長一點,第二行settimeout20可以設置超時時間,單位是秒。腳本執行效果如下還能做什麼細心的同學一定發現了,其實expect提供的是和終端的一種交互機制,輸入密碼只是其中一種應用形式,只要是在終端阻塞需要輸入時,都可以通過expect腳本完成自動輸入,比如前面腳本里配置了兩種交互場景,一種是終端提示"password:"時輸入密碼,還有一種是提示"yes/no)?"時輸入「yes」,如果和遠程主機是第一次建立連接,執行scp.exp腳本效果是這樣的所以我們可以根據終端的提示來配置輸入命令,這樣就能達到了自動化的效果。至於處理其它交互場景,只需要照著上面的腳本依葫蘆畫瓢就行了

3. 怎麼在一個shell腳本中執行遠程主機的另一個shell腳本 ssh已經可以無密碼登錄了。

假設你要操作的是遠程伺服器
IP為:1.1.1.1
操作的腳本是 :/home/a.sh

操作命令為
ssh 1.1.1.1 「/bin/bash /home/a.sh」

4. linux下如何使用ssh遠程登錄主機 執行shell腳本

知道linux的ip,用戶和密碼就可以遠程登陸了。在你的SSH 客戶端會有一個linux的終端。在這執行命令就可以了。

5. linux shell 遠程連接腳本怎麼寫 Linux

樓上亂講,你在腳本里 ssh username@遠程主機ip 這樣寫的話會提示你輸入密碼,腳本不能實現自動化還有什麼意義。

直接在shell腳本里是實現不了自動登錄的,你需要藉助expect腳本。
redhat下默認是沒有安裝expect,你可以用yum install expect來安裝。
安裝完成後編寫腳本如下
#!/usr/bin/expect -f

set timeout 30

spawn ssh username@host
expect "*assword:*"

send "password\r"
expect eof

保存後給它加上可執行許可權,就可以用這個腳本登錄了。
解釋一下
set timeout 30 設置超時時間
spawn spawn用來啟動一個新的進程
expect 用來等待你所期望的系統返回的字元串
send 用來向系統發送一個字元串,即你的密碼
expect eof 等待接受文件結束符。

夠詳細了吧。累死我了。

6. shell腳本中怎麼ssh上遠程機執行命令

你好,
先在兩台機子上建立信任,ssh-key
具體方法網路下就有
腳本里的命令是
ssh 用戶@ip

7. 如何使用python執行遠程shell腳本

最近有個需求就是頁面上執行shell命令,第一想到的就是os.system,

代碼如下:
os.system('cat /proc/cpuinfo')

但是發現頁面上列印的命令執行結果 0或者1,當然不滿足需求了。

嘗試第二種方案 os.popen()

代碼如下:
output = os.popen('cat /proc/cpuinfo')
print output.read()

通過 os.popen() 返回的是 file read 的對象,對其進行讀取 read() 的操作可以看到執行的輸出。但是無法讀取程序執行的返回值)

嘗試第三種方案 commands.getstatusoutput() 一個方法就可以獲得到返回值和輸出,非常好用。

代碼如下:
(status, output) = commands.getstatusoutput('cat /proc/cpuinfo')
print status, output

Python Document 中給的一個例子,

代碼如下:
>>> import commands
>>> commands.getstatusoutput('ls /bin/ls')
(0, '/bin/ls')
>>> commands.getstatusoutput('cat /bin/junk')
(256, 'cat: /bin/junk: No such file or directory')
>>> commands.getstatusoutput('/bin/junk')
(256, 'sh: /bin/junk: not found')
>>> commands.getoutput('ls /bin/ls')
'/bin/ls'
>>> commands.getstatus('/bin/ls')
'-rwxr-xr-x 1 root 13352 Oct 14 1994 /bin/ls'

8. linux 如何自動遠程執行腳本

1、安裝sshpass
2、sshpass -p 「passwd」 ssh -p22 root@$dst_ip 「a.sh」
注意a.sh是目標主機里的腳本。

9. 利用shell腳本執行ssh遠程另一台主機執行命令並返回命令的結果集

假設從主機A,檢查主機B上的進程,
需要在主機B上建立檢查用戶,例如叫x,
並設置通過public key認證登錄SSH,不會可以google搜一下,
然後,在A機器上執行:
ssh x@B ~/command.sh > result.txt
command.sh就是B機器上放置在x目錄下的腳本。
輸出結果應該是寫到了result.txt
或者另一種寫法
result=`ssh x@B ~/command.sh`
結果直接保存到result變數中了。
暫時沒有linux環境,所以沒有實際測試,你自己試試吧
免費提供最新Linux技術教程書籍,入門自學書籍《linux就該這么學》,為開源技術愛好者努力做得更多更好

10. powershell 遠程執行bat腳本,去啟動一個應用,如何讓應用一直運行,powershell能正常退出

start 「.\4511_start.bat"
這樣執行就會以新窗口運行bat腳本,而不再佔用powershell

熱點內容
scratch少兒編程課程 發布:2025-04-16 17:11:44 瀏覽:624
榮耀x10從哪裡設置密碼 發布:2025-04-16 17:11:43 瀏覽:353
java從入門到精通視頻 發布:2025-04-16 17:11:43 瀏覽:68
php微信介面教程 發布:2025-04-16 17:07:30 瀏覽:293
android實現陰影 發布:2025-04-16 16:50:08 瀏覽:786
粉筆直播課緩存 發布:2025-04-16 16:31:21 瀏覽:336
機頂盒都有什麼配置 發布:2025-04-16 16:24:37 瀏覽:201
編寫手游反編譯都需要學習什麼 發布:2025-04-16 16:19:36 瀏覽:795
proteus編譯文件位置 發布:2025-04-16 16:18:44 瀏覽:353
土壓縮的本質 發布:2025-04-16 16:13:21 瀏覽:581