Shell
實時監控後台作業
我執行了這樣的命令:
nohup some_command &
. 現在這個命令在後台。我可以用命令看到它jobs
。範例輸出:
[1]+ Running nohup some_command &
是否有可能以某種方式實時表示來自
jobs
命令的狀態,類似於如何top
工作?所以當nohup some_command &
完成時,它會立即從列表中消失?
如果您只想立即列印作業完成通知,即使您正在輸入提示或其他作業在前台,那麼只需執行
set -o notify
.如果你想要一個顯示目前 shell 後台作業狀態的前台命令,你可以
jobs
循環執行。全屏很容易做到:tput clear jobs while sleep 1; do tput clear jobs done
如果您想在提示下方顯示列表而不清除螢幕,請將游標位置保存在開頭並在每次執行時恢復:
tput sc jobs while sleep 1; do tput rc jobs done