shell 命令執行超時時間


shell 中給命令設置超時時間

在我們寫 shell 腳本的時候,有時候想給一個命令設置一個超時時間,當命令執行了多長時間還沒有執行完就強制終止;我們可以采用如下方式

timeout 3 sleep 30

當 sleep 執行 3 秒的時候就會終止。

timeout 指令介紹

運行指定的命令,如果在指定時間后仍在運行,則殺死該進程。用來控制程序運行的時間。

使用方法

timeout [選項] 數字[后綴] 命令 [參數]...

后綴”s”代表秒(默認值),”m”代表分,”h”代表小時,”d”代表天。

選項介紹

長選項必須使用的參數對於短選項時也是必需使用的。
  -s, --signal=信號
        指定在超時時發送的信號。信號可以是類似"HUP"的信號名或是信號數。
        查看"kill -l"以獲得信號列表
      --help        顯示此幫助信息並退出
      --version        顯示版本信息並退出

如果程序超時則退出狀態數為124,否則返回程序退出狀態。
如果沒有指定信號則默認為TERM 信號。TERM 信號在進程沒有捕獲此信號時殺死進程。
對於另一些進程可能需要使用KILL (9)信號,當然此信號不能被捕獲。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM