आप ps
आउटपुट को थोड़ा बेहतर तरीके से संभाल सकते हैं ।
ps --width ${n:-$COLUMNS} ${opts} #set ps terminal width
ps -ww ${opts} #no word wrap
ps -o ${only_interesting_output} ${opts} #trim output
यह ps
आवश्यक के रूप में अपने विनिर्देशों के लिए अपने उत्पादन को पार्स करने के लिए बताएगा ।
बेशक, यदि आप शब्द लपेट नहीं करते हैं, हालांकि, तो आपको गुम जानकारी की समस्या है। क्या आपको वास्तव में सभी प्रक्रियाओं के लिए इसकी आवश्यकता है? इसे पेजर में खोलें यदि ऐसा है:
ps ww ${opts} | $PAGER
यदि नहीं, तो निर्दिष्ट करें कि आप क्या देखना चाहते हैं:
ps -o args= -p $pid
वैकल्पिक रूप से आप ps
अपने टर्मिनल के बारे में स्पष्ट रूप से बता सकते हैं --width
:
man ps
...
w
व्यापक उत्पादन। असीमित चौड़ाई के लिए दो बार इस विकल्प का उपयोग करें।
-w
व्यापक उत्पादन। असीमित चौड़ाई के लिए दो बार इस विकल्प का उपयोग करें।
--width n
स्क्रीन की चौड़ाई सेट करें।
--width
बिना किसी अतिरिक्त फ़िल्टर या सहायक प्रक्रियाओं को शामिल किए बिना यह चीज़ आपके अनुरोधित चश्मे के लिए बिल्कुल काम करती है (जो संभवतः आपके -aux
आउटपुट को और भी अधिक अव्यवस्थित कर देगी )। और $COLUMNS
जैसा कि ऊपर दिखाया गया है और जैसा कि स्टीफन बताते हैं कि यह गतिशील रूप से भी काम करेगा।
यह शायद ध्यान देने योग्य है, हालांकि, मुझे लगता है कि लोग अक्सर इस तरह के अनावश्यक फिल्टर को जोड़ने की कोशिश करते हैं ताकि वे आउटपुट को पार्स करने के लिए एक अन्य फिल्टर के |pipe
माध्यम से व्यवस्थित कर सकें जो अनावश्यक होने की बहुत संभावना है। बेशक, लोगों द्वारा मैं ज्यादातर मेरा मतलब है।
-o
Utput आपरेण्ड मैं ऊपर जो कॉलम फिल्टर करने की अनुमति देता उल्लेख ps
प्रदर्शित करता है, और जब आप जोड़ने के =
असाइनमेंट तुम भी आप के रूप में स्तंभ नाम कर सकते हैं कृपया। मैं काम को रिक्त छोड़ दें और यह एक लक्ष्य हाथ -p
rocess $pid
इतना से ही उत्पादन ps
बिल्कुल भी है $pid
कमान नाम और उसके args
मंगलाचरण पर। और -o
मुश्किल से सतह को खरोंच कर देता है कि आप कैसे परिभाषित कर सकते हैं कि क्या ps
प्रदर्शित करेगा या नहीं। यह वह दिशा है जो मैं आपको लेने की सलाह दूंगा, विशेषकर:
man ps
...
बीएसडी सिंटैक्स का उपयोग कर सिस्टम पर हर प्रक्रिया को देखने के लिए:
ps ax
ps axu
एक प्रक्रिया पेड़ मुद्रित करने के लिए:
ps -ejH
ps axjf
धागे के बारे में जानकारी प्राप्त करने के लिए:
ps -eLf
ps axms
सुरक्षा जानकारी प्राप्त करने के लिए:
ps -eo euser,ruser,suser,fuser,f,comm,label
ps axZ
ps -eM
उपयोगकर्ता प्रारूप में रूट (वास्तविक और प्रभावी आईडी) के रूप में चलने वाली प्रत्येक प्रक्रिया को देखने के लिए:
ps -U root -u root u
उपयोगकर्ता-निर्धारित प्रारूप वाली प्रत्येक प्रक्रिया को देखने के लिए:
ps -eo pid,tid,class,rtprio,ni,pri,psr,pcpu,stat,wchan:14,comm
ps axo stat,euid,ruid,tty,tpgid,sess,pgrp,ppid,pid,pcpu,comm
ps -Ao pid,tt,user,fname,tmout,f,wchan
केवल प्रक्रिया ID का syslogd प्रिंट करें:
ps -C syslogd -o pid=
केवल PID 42 का नाम प्रिंट करें:
ps -p 42 -o comm=