Ps
如何確定 bash 正在執行哪個腳本?
我如何確定程序正在執行哪個腳本?當我使用:
ps -u user
我得到以下輸出:
10005194 26932 0.0 0.0 112700 1544 ? Ss Jun03 0:00 -bash 10005194 27117 0.0 0.0 112700 1528 ? Ss Apr24 0:00 -bash 10005194 27164 0.0 0.0 112700 2040 ? Ss Jun06 0:00 -bash 10005194 27404 0.0 0.0 112700 1544 ? Ss May27 0:00 -bash 10005194 27484 0.0 0.0 112700 1528 ? Ss Apr23 0:00 -bash 10005194 27531 0.0 0.0 112700 1528 ? Ss May22 0:00 -bash ...
有數百行。我知道該使用者正在執行許多腳本,但我想縮小哪些腳本保留線上程上。有沒有辦法做到這一點?
使用
w
(對於“寬”)選項。從
man ps
(搜尋wide
):
w
寬輸出。使用此選項兩次以獲得無限寬度。例如
ps ww -u cas
:$ ps ww -U cas | grep bash 1350 pts/0 Ss 0:00 -bash 18345 pts/34 S 0:00 /bin/bash /home/cas/bin/myscript.sh 21293 pts/34 Ss+ 0:00 bash
這
-bash
是一個登錄外殼。plain
bash
是一個非登錄互動式 shell - tty是相同的,因此您可以判斷它是bash shellpts/34
的父 shell(或遠方的祖父) 。myscript.sh
使用 /usr/env/bin bash 會阻止您確定正在執行的腳本。相反,您應該準確指定 bash 執行檔是否適用於您正在執行的機器。