當您輸入「ps aux」時,ps命令會顯示程序運行的命令參數。有些程序將此作爲指示狀態的一種方式進行更改。我試過改變argv []字段,它似乎不工作。有沒有一種標準的方式來設置命令行參數,以便在用戶鍵入ps時顯示它們?如何在C程序中設置命令行參數,以便在用戶輸入「ps aux」時可見?
也就是說,這不起作用:
int main(int argc,char **argv)
{
argv[0] = "Hi Mom!";
sleep(100);
}
09:40 imac3:~$ ./x &
[2] 96087
09:40 imac3:~$ ps uxp 96087
USER PID %CPU %MEM VSZ RSS TT STAT STARTED TIME COMMAND
yv32 96087 0.0 0.0 2426560 324 s001 S 9:40AM 0:00.00 ./x
09:40 imac3:~$ cat x.c
我認爲ythis是某種稱爲「bash選項卡擴展」的東西。您需要爲您的程序定義一個選項卡擴展處理程序,並將其註冊到某個文件中,但不要問我該如何執行此操作。 – fuz 2010-09-21 13:46:12
不可能? (http://www.steve.org.uk/Reference/Unix/faq_2.html#SEC22)你可能也喜歡(http://www.netsplit.com/2007/01/10/hiding-arguments-from- ps /) – pmg 2010-09-21 13:54:30