कैसे जांचें कि कौन सी विशिष्ट प्रक्रियाएं (पायथन स्क्रिप्ट) चल रही हैं?


12

कमांड 'टॉप' का उपयोग करके मैं देख सकता हूं कि 2 पायथन स्क्रिप्ट चल रही हैं। हालाँकि, मैं उनके नाम या निर्देशिका / स्थान की जाँच कैसे करूँ? मैं उन्हें पहचानना चाहता हूं ताकि मैं देख सकूं कि क्या ठीक से चल रहा है और क्या नहीं।


1
lsof -p $PIDएक अच्छी शुरुआत होगी। $PIDपीआईडी ​​की अल्पविराम-सीमांकित सूची भी हो सकती है। साथ ही, टन डेटा को उजागर किया जाएगा /proc/$PID/
डोपघोटी

जवाबों:


19

आप उपयोग कर अजगर प्रक्रियाओं की एक सूची प्राप्त कर सकते हैं pgrep:

pgrep -lf python

यह, हालांकि, पूरे कमांड लाइन को सूचीबद्ध नहीं करता है। यदि आपके पास हाल ही का संस्करण है, pgrepतो आप इसे करने के लिए -a का उपयोग कर सकते हैं:

pgrep -af python

अन्यथा, आप उपयोग कर सकते हैं /proc:

IFS=" " read -ra pids < <(pgrep -f python)
for pid in "${pids[@]}"; do
    printf '%d: ' "$pid"
    tr '\0' ' ' < "/proc/$pid/cmdline"
    echo
done

4

मैं आमतौर पर ps -fA | grep pythonयह देखने के लिए उपयोग करता हूं कि क्या प्रक्रियाएं चल रही हैं।

यह आपको निम्नलिखित की तरह परिणाम देगा:

UID     PID   PPID  C STIME TTY      TIME     BIN            CMD
user    3985  3960  0 19:46 pts/4    00:00:07 path/to/python python foo.py

CMD, तुम क्या अजगर स्क्रिप्ट आप चल रहे हैं दिखाने हालांकि यह आप स्क्रिप्ट की निर्देशिका नहीं देंगे होगा।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.