एंड्रॉयड

लिनक्स में ps कमांड (सूची प्रक्रियाएं)

The Complete Linux Course: Beginner to Power User!

The Complete Linux Course: Beginner to Power User!

विषयसूची:

Anonim

लिनक्स में, प्रोग्राम के रनिंग इंस्टेंस को प्रोसेस कहा जाता है। कभी-कभी, लिनक्स मशीन पर काम करते समय, आपको यह पता लगाने की आवश्यकता हो सकती है कि वर्तमान में क्या प्रक्रियाएं चल रही हैं।

ऐसे कई आदेश हैं जिनका उपयोग आप चल रही प्रक्रियाओं के बारे में जानकारी प्राप्त करने के लिए कर सकते हैं, ps , pstree और top के साथ सबसे अधिक उपयोग होने वाले।

यह आलेख बताता है कि वर्तमान में चल रही प्रक्रियाओं को सूचीबद्ध करने और उन प्रक्रियाओं के बारे में जानकारी प्रदर्शित करने के लिए ps कमांड का उपयोग कैसे करें।

ps कमांड का उपयोग कैसे करें

ps कमांड के लिए सामान्य सिंटैक्स निम्नानुसार है:

ps

ऐतिहासिक और संगतता कारणों के लिए, ps कमांड कई अलग-अलग प्रकार के विकल्पों को स्वीकार करता है:

  • UNIX शैली विकल्प, एकल डैश से पहले.BSD शैली विकल्प, जो डैश के बिना उपयोग किया जाता है। GNU लंबे विकल्प, दो डैश से पहले।

विभिन्न विकल्प प्रकारों को मिश्रित किया जा सकता है, लेकिन कुछ विशेष मामलों में, टकराव दिखाई दे सकता है, इसलिए एक विकल्प प्रकार के साथ रहना सबसे अच्छा है।

बीएसडी और यूनिक्स विकल्पों को समूहीकृत किया जा सकता है।

बिना किसी विकल्प के उपयोग किए जाने पर, यह सबसे सरल रूप है, ps वर्तमान शेल में चल रही न्यूनतम दो प्रक्रियाओं के लिए जानकारी के चार कॉलम प्रिंट करेगा, शेल स्वयं, और शेल को चलाने वाली प्रक्रियाएं जब कमांड को लागू किया गया था।

ps

आउटपुट में शेल ( bash ) और इस शेल में चल रही प्रक्रिया ( ps , आपके द्वारा टाइप किया गया कमांड) के बारे में जानकारी शामिल है:

PID TTY TIME CMD 1809 pts/0 00:00:00 bash 2043 pts/0 00:00:00 ps

चार कॉलम PID , TTY , TIME और CMD लेबल हैं।

  • PID - प्रक्रिया आईडी। ps कमांड चलाते समय, सबसे महत्वपूर्ण जानकारी जो उपयोगकर्ता ढूंढ रहा है, वह है PID। पीआईडी ​​को जानने से आप एक खराब प्रक्रिया को मार सकते हैं। TTY - प्रक्रिया के लिए नियंत्रण टर्मिनल का नाम। TIME - प्रक्रिया का संचयी CPU समय, मिनट और सेकंड में दिखाया गया है। CMD - प्रक्रिया शुरू करने के लिए उपयोग किए जाने वाले कमांड का नाम।

उपरोक्त आउटपुट बहुत उपयोगी नहीं है क्योंकि इसमें बहुत अधिक जानकारी नहीं है। ps कमांड की वास्तविक शक्ति अतिरिक्त विकल्पों के साथ लॉन्च होने पर आती है।

ps कमांड बहुत सारे विकल्पों को स्वीकार करता है जिनका उपयोग प्रक्रियाओं के एक विशिष्ट समूह और प्रक्रिया के बारे में अलग-अलग जानकारी प्रदर्शित करने के लिए किया जा सकता है, लेकिन दिन-प्रतिदिन के उपयोग में केवल कुछ मुट्ठी भर की आवश्यकता होती है।

ps को अक्सर विकल्पों के निम्नलिखित संयोजन के साथ उपयोग किया जाता है:

बीएसडी फॉर्म:

ps aux

  • विकल्प सभी उपयोगकर्ताओं की प्रक्रियाओं को प्रदर्शित करने के लिए ps बताता है। केवल वे प्रक्रियाएँ जो एक टर्मिनल से जुड़ी नहीं हैं और समूह के नेताओं की प्रक्रियाएँ नहीं दिखाई जाती हैं। u एक उपयोगकर्ता-उन्मुख प्रारूप के लिए खड़ा है जो प्रक्रियाओं के बारे में विस्तृत जानकारी प्रदान करता है। x विकल्प ps को एक नियंत्रित टर्मिनल के बिना प्रक्रियाओं को सूचीबद्ध करने का निर्देश देता है। वे मुख्य रूप से प्रक्रियाएं हैं जो बूट समय पर शुरू की जाती हैं और पृष्ठभूमि में चल रही हैं।

कमांड USER , PID , %CPU , %MEM , VSZ , RSS , STAT , START , TTY , TIME और CMD लेबल वाले ग्यारह कॉलम में जानकारी प्रदर्शित करता है।

USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND root 1 0.0 0.8 77616 8604 ? Ss 19:47 0:01 /sbin/init root 2 0.0 0.0 0 0 ? S 19:47 0:00…

हमने पहले ही PID , TTY , TIME और CMD लेबल समझाया। यहाँ अन्य लेबल की व्याख्या है:

  • USER - वह उपयोगकर्ता जो प्रक्रिया चलाता है। %CPU - प्रक्रिया का सीपीयू उपयोग। %MEM - प्रक्रिया के निवासी का प्रतिशत मशीन पर भौतिक मेमोरी के आकार को निर्धारित करता है। VSZ - KiB में प्रक्रिया का वर्चुअल मेमोरी साइज़। RSS - भौतिक मेमोरी का आकार जो प्रक्रिया का उपयोग कर रहा है। STAT - प्रक्रिया राज्य कोड, जैसे Z (ज़ोंबी), S (स्लीपिंग), और R (रनिंग)। START - वह समय जब कमांड शुरू हुई।

f विकल्प ps को बताता है कि बच्चे की प्रक्रियाओं के लिए माता-पिता का एक पेड़ दृश्य प्रदर्शित करें:

ps auxf

ps कमांड आपको आउटपुट को सॉर्ट करने की अनुमति भी देता है। उदाहरण के लिए, मेमोरी उपयोग के आधार पर आउटपुट को सॉर्ट करने के लिए, आप उपयोग करेंगे:

ps aux --sort=-%mem

UNIX फॉर्म:

ps -ef

  • -e विकल्प ps को सभी प्रक्रियाओं को प्रदर्शित करने का निर्देश देता है। यदि यह पूर्ण-प्रारूप लिस्टिंग के लिए खड़ा है, जो प्रक्रियाओं के बारे में विस्तृत जानकारी प्रदान करता है।

UID , PID , PPID , C , STIME , TIME और CMD लेबल वाले आठ कॉलम में कमांड सूचना प्रदर्शित करता है।

UID PID PPID C STIME TTY TIME CMD root 1 0 0 19:47 ? 00:00:01 /sbin/init root 2 0 0 19:47 ? 00:00:00…

जिन लेबलों की पहले से व्याख्या नहीं की गई है, उनके निम्नलिखित अर्थ हैं:

  • UID - USER रूप में समान, प्रक्रिया चलाने वाले उपयोगकर्ता। PPID - मूल प्रक्रिया की आईडी। C - %CPU रूप में समान, प्रक्रिया CPU उपयोग। STIME - START समान, कमांड शुरू होने का समय।

केवल विशिष्ट उपयोगकर्ता के रूप में चलने वाली प्रक्रियाओं को देखने के लिए, निम्न कमांड टाइप करें, जहां linuxize उपयोगकर्ता का नाम है:

ps -f -U linuxize -u linuxize

उपयोगकर्ता द्वारा परिभाषित प्रारूप

o विकल्प आपको यह निर्दिष्ट करने की अनुमति देता है कि ps कमांड चलाते समय कौन से कॉलम प्रदर्शित किए जाते हैं।

उदाहरण के लिए, केवल PID और COMMAND बारे में जानकारी मुद्रित करने के लिए, आप निम्न में से एक कमांड चलाएंगे:

ps -efo pid, comm

ps auxo pid, comm

अन्य कमांड के साथ ps का उपयोग करना

ps का उपयोग पाइपिंग के माध्यम से अन्य कमांड के साथ संयोजन में किया जा सकता है।

ps -ef | less

ps कमांड के आउटपुट को grep फ़िल्टर किया जा सकता है। उदाहरण के लिए, आपके द्वारा चलाए जाने वाले रूट उपयोगकर्ता से संबंधित केवल प्रक्रिया दिखाने के लिए:

ps -ef | grep root

निष्कर्ष

लिनक्स सिस्टम पर समस्याओं का निवारण करते समय ps कमांड सबसे अधिक इस्तेमाल की जाने वाली कमांड में से एक है। इसके कई विकल्प हैं, लेकिन आमतौर पर, अधिकांश उपयोगकर्ता चल रही प्रक्रियाओं के बारे में जानकारी इकट्ठा करने के लिए या तो ps aux या ps -ef का उपयोग कर रहे हैं।

ps बारे में अधिक जानकारी के लिए, अपने टर्मिनल में man ps लिखें।

पीएस टर्मिनल