簡體   English   中英

嘗試自動執行從 Windows 到 Linux (BusyBox) 需要用戶交互才能終止的控制台

[英]Attempting to automate a task from Windows to Linux (BusyBox) Console that requires user interaction for termination

我有一個 Powershell 腳本,它將自動 SSH 到 Linux 主機(運行 Busybox 的./my_script.sh服務器),並將運行一個單一命令(捕獲一些網絡流量的 ESXI 服務器)。 但是,此腳本等待用戶輸入 (CTRL + C) 以退出腳本。

我嘗試使用 Posh-SSH 模塊( Invoke-SSHCommand -SSHSession $session -Command $command )語法以及 Plink 模塊( plink -batch *servername* -pw *userPassword* *command* ),但命令總是執行讓我回到 shell,他們從不等待用戶交互。

當然,如果我直接在 ESXI 服務器上運行它,腳本將等待 CTRL + C 命令終止。

有人知道解決方法嗎?

On 選項是應該存在的timeout命令,為您正在運行的任何命令設置運行時限制。 例如,如果您需要tcpdump捕獲 20 秒的數據包,您可以運行:

timeout 20 tcpdump

如果您使用的命令在不同信號之間具有不一致的行為,您還可以使用--signal標志指定要發送到進程的特定信號(查看帶有 kill -l` 的信號列表):

timeout --signal INT 20 tcpdump

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM