Systemctl कमांड चल रही सेवाओं का सारांश प्रदर्शित करने के लिए


12

systemctlवर्तमान में चल रही सभी सेवाओं का सारांश प्रदर्शित करने के लिए मैं किस विकल्प या आदेश का उपयोग करूंगा?


आपको @Zanna का उत्तर स्वीकार करना चाहिए। यह मेरा प्रश्न जितना मेरा है, उससे कहीं अधिक संबोधित करता है, भले ही इसका वैध तरीका भी हो।
वीडियोनौथ

जवाबों:


20

आप कुछ systemctlविकल्पों का उपयोग कर सकते हैं :

-t, --type=
       The argument should be a comma-separated list of unit types such as
       service and socket.

       If one of the arguments is a unit type, when listing units, limit
       display to certain unit types. Otherwise, units of all types will
       be shown.

       As a special case, if one of the arguments is help, a list of
       allowed values will be printed and the program will exit.

   --state=
       The argument should be a comma-separated list of unit LOAD, SUB, or
       ACTIVE states. When listing units, show only those in the specified
       states. Use --state=failed to show only failed units.

       As a special case, if one of the arguments is help, a list of
       allowed values will be printed and the program will exit.

तो शायद आप चाहते हैं:

systemctl --type=service --state=active list-units

जो उन सभी सक्रिय सेवाओं को सूचीबद्ध करता है जिनमें बाहर निकल गए हैं। यदि आप इस क्षण का उपयोग कर रहे हैं, तो आप इसका उपयोग कर सकते हैं:

systemctl --type=service --state=running list-units

3
systemctlकिसी भी subcommands बिना आदेश मानता list-unitsहै, तो ... systemctl --type-service --state=running, या सिर्फ एक सादे systemctlत्वरित उपयोग के लिए।
मूरू

11

यह है (देखें man 1 systemctl):

systemctl list-units | grep -E 'service.*running'

या (यह भी देखें man 8 service)

service --status-all

जहां उन [+]सेवाओं को इंगित करता है जो वास्तव में चल रही हैं।


4

आवश्यकता से अधिक समय तक इधर-उधर देखने के बाद मैं दौड़ने की सेवाओं को निर्धारित करने की इस भिन्न विधि के साथ आया। यह रनिंग सेवाओं की संख्या की गणना करने का तरीका भी दिखाता है। इस तरह से यह सुनिश्चित होता है कि इसकी गलती से सेवाओं के नाम में चल रहे या सेवा शब्द के साथ कुछ पकड़ा नहीं जाता है।

# Output all active services:
systemctl -t service --state=active --no-pager --no-legend

# Count of all active services:
systemctl -t service --state=active --no-pager --no-legend | grep -c -

# Output all running services:
systemctl -t service --state=active --no-pager --no-legend | egrep '^*\.service.*running'

# Count of all running services:
systemctl -t service --state=active --no-pager --no-legend | egrep '^*\.service.*running' -c -

# Output only the service and its description:
systemctl -t service --state=active --no-pager --no-legend | egrep '^*\.service.*running' | awk 'BEGIN { FS = " ";} {for (i = 2; i <= 4; i++) { $i = "" }; print}'
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.