當前位置:首頁 » 網頁前端 » 遠程執行腳本
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

遠程執行腳本

發布時間: 2022-03-07 10:38:02

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

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

⑵ 如何使用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'

⑶ 如何用批處理登錄遠程計算機上,執行另一個批處理文件

用net use命令連接ipc$,需要管理員用戶和密碼。

net user \192.168.1.10/ipc$ "password" /user:administrator;

然後用at命令遠程執行。

at \192.168.1.10 18:00 "d: emote.cmd";

18:00表示時間,下午6點.at \ip 是用來給遠程電腦在指定的時間運行某個任務用的;

at \ip hh:mm 「程序路徑和參數」;

比方說17:00分,用管理員賬戶admin 密碼:123456連接到192.168.0.1,要讓他運行d盤下的remote.cmd你就可以這樣寫:

at \192.168.0.1 17:01 "d: emote.cmd"

這樣,remote.cmd在一分鍾內就會被執行了。

(3)遠程執行腳本擴展閱讀:

遠程的計算機服務需要使用遠程式控制制軟體,遠程式控制制軟體一般分客戶端程序(Client)和伺服器端程序(伺服器)兩部分,通常將客戶端程序安裝到主控端的電腦上,將伺服器端程序安裝到被控端的電腦上。

使用時客戶端程序向被控端電腦中的伺服器端程序發出信號,建立一個特殊的遠程服務,然後通過這個遠程服務,使用各種遠程式控制制功能發送遠程式控制制命令,控制被控端電腦中的各種應用程序運行。

⑷ 怎麼遠程執行自己編寫的ps1

遠程機器上啟用 允許遠程管理

PS> Enable-PSRemoting -Force -SkipNetworkProfileCheck
在此計算機上設置了 WinRM 以接收請求。
WinRM 已經進行了更新,以用於遠程管理。
WinRM 防火牆異常已啟用。
本地機器上可以這樣執行

PS> Invoke-Command -ComputerName localhost -ScriptBlock {whoami}
PSTips.NET\Mosser.lee
如果是寫好的ps1,可以先把腳本放在遠程機器上能夠訪問的共享目錄上:

Invoke-Command -ComputerName localhost -ScriptBlock { \\pstips.net\abc\a.ps1}

⑸ linux 如何自動遠程執行腳本

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

⑹ 利用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就該這么學》,為開源技術愛好者努力做得更多更好

⑺ linux 遠程調用腳本執行後不繼續執行後續命令,需要輸入ctrl+c,詳細見補充

這腳本寫的,為什麼不直接在B機器上直接執行。a機器做了免密鑰登錄了嗎,a.sh里的ssh……

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

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

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

⑼ 如何遠程調用windows上的批處理腳本

如果你想 在伺服器上運行,伺服器上的程序,就是終端。終端可以用telnet ssh等。
telnet伺服器系統自帶,ssh要在伺服器上安裝一個程序。
現在你就可以手動從本地 終端登陸伺服器了。
要想讓腳本自動登錄,有命令swawn 和 expect 寫腳本,當然這兩個命令需要客戶機環境支持。

⑽ 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]