जो का उपयोग करने के लिए ps ef या ps -ef?


12

मैं देख रहा हूँ कि उत्पादन ps efऔर के बीच अंतर है ps -ef। वह अंतर क्या है, क्या दोनों कमांड सही हैं या जिन्हें प्राथमिकता दी जाती है?



एक अच्छी व्याख्या यहाँ है - askubuntu.com/a/1021905
टॉम तिबेन्सकी

जवाबों:


18

देखें man ps(आपके सिस्टम का एक, ऑन-लाइन अलग स्पष्टीकरण हो सकता है)।

This version of ps accepts several kinds of options:

   1   UNIX options, which may be grouped and must be preceded by a dash.
   2   BSD options, which may be grouped and must not be used with a dash.
   3   GNU long options, which are preceded by two dashes.

तो 1 विधि ( ps ef) बीएसडी शैली है और मैनुअल पेज के साथ चलता है

बीएसडी-शैली विकल्पों का उपयोग डिफ़ॉल्ट डिस्प्ले में प्रक्रिया स्थिति (स्टेट = स्टेट) जोड़ देगा और निष्पादन योग्य नाम के बजाय कमांड आर्ग्स (args = COMMAND) दिखाएगा । आप PS_FORMAT वातावरण चर के साथ इसे ओवरराइड कर सकते हैं। बीएसडी-शैली विकल्पों के उपयोग से अन्य टर्मिनलों (टीटीवाई) पर प्रक्रिया को शामिल करने के लिए प्रक्रिया चयन भी बदल जाएगा जो आपके स्वामित्व में हैं; वैकल्पिक रूप से, इसे अन्य उपयोगकर्ताओं के स्वामित्व वाली प्रक्रियाओं को बाहर करने या टर्मिनल पर नहीं करने के लिए फ़िल्टर की गई सभी प्रक्रियाओं के सेट के चयन के रूप में वर्णित किया जा सकता है। इन प्रभावों पर विचार नहीं किया जाता है जब विकल्पों को नीचे "समान" के रूप में वर्णित किया जाता है, इसलिए -M को Z और इसी तरह के समान माना जाएगा।

इसलिए दोनों वैध कमांड हैं लेकिन वे एक ही जानकारी नहीं दिखा रहे हैं।


20

man ps कहते हैं:

This version of ps accepts several kinds of options:

1   UNIX options, which may be grouped and must be preceded by a
    dash.
2   BSD options, which may be grouped and must not be used with a
    dash.
3   GNU long options, which are preceded by two dashes.

इसलिए, efबीएसडी eऔर fविकल्पों का -efउपयोग करता है , और यूनिक्स -eऔर -fविकल्पों का उपयोग करता है । ये अलग-अलग हैं (खंड SIMPLE PROCESS SELECTION, OUTPUT FORMAT CONTROLऔर OUTPUT MODIFIERSक्रमशः):

   -e     Select all processes.  Identical to -A.
   -f     Do full-format listing. This option can be combined with many
          other UNIX-style options to add additional columns.  It also
          causes the command arguments to be printed.  When used with
          -L, the NLWP (number of threads) and LWP (thread ID) columns
          will be added.  See the c option, the format keyword args, and
          the format keyword comm.

   e      Show the environment after the command.

   f      ASCII art process hierarchy (forest).

स्पष्ट रूप से, आप efविकल्पों का उपयोग करके सभी प्रक्रियाओं का चयन नहीं कर रहे हैं, लेकिन प्रक्रियाओं की डिफ़ॉल्ट सूची का उपयोग कर रहे हैं, साथ ही कुछ अतिरिक्त स्वरूपण:

By default, ps selects all processes with the same effective user ID
(euid=EUID) as the current user and associated with the same terminal
as the invoker.  It displays the process ID (pid=PID), the terminal
associated with the process (tname=TTY), the cumulated CPU time in
[DD-]hh:mm:ss format (time=TIME), and the executable name (ucmd=CMD).
Output is unsorted by default.

The use of BSD-style options will add process state (stat=STAT) to
the default display and show the command args (args=COMMAND) instead
of the executable name.  You can override this with the PS_FORMAT
environment variable. The use of BSD-style options will also change
the process selection to include processes on other terminals (TTYs)
that are owned by you; alternately, this may be described as setting
the selection to be the set of all processes filtered to exclude
processes owned by other users or not on a terminal.

जो आपको उपयोग करना चाहिए? आप आउटपुट के साथ क्या करना चाहते हैं?

इसके अलावा, EXAMPLESअनुभाग देखें (जो सूची -efको प्रमुखता से सूचीबद्ध करता है , और बीएसडी eविकल्प का उपयोग बिल्कुल नहीं करता है ):

EXAMPLES

   To see every process on the system using standard syntax:
      ps -e
      ps -ef
      ps -eF
      ps -ely

   To see every process on the system using BSD syntax:
      ps ax
      ps axu

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