Spaltennamen in der ps-Ausgabe deaktivieren


22

Wie formatiere ich die Ausgabe eines ps -pBefehls?

Um mir so etwas nicht zu zeigen:

PID TTY                TIME CMD

aber nur PIDs.

Ich benutze Linux.

Antworten:



20

Verwenden Sie --no-headers, um die Kopfzeile wegzulassen.

Originalausgabe:

ps
  PID TTY          TIME CMD
27027 pts/0    00:00:00 bash
27071 pts/0    00:00:00 ps

Mit --no-headers:

ps --no-headers
27027 pts/0    00:00:00 bash
27072 pts/0    00:00:00 ps

Kombinierbar mit -p:

ps -p 1 --no-headers
    1 ?        00:00:33 systemd

Die manSeite für psdokumentiert dies eindeutig:

man ps

[snip]

 --no-headers
          Print no header line at all.  --no-heading is an alias for this option.

2
Funktioniert nicht auf Macs. Naturall -____-
Avindra Goolcharan

Tatsächlich. Es wurde nicht erwartet, dass es unter MacOS funktioniert. Die Frage betraf ausschließlich Linux, wie auf dem Originalposter hervorgehoben.
Steve

2
np steve. Ich dokumentiere es hier nur für zukünftige Leser. Der geringfügige Unterschied zwischen BSD- und Linux-Utils ist äußerst irritierend. sed ist das Schlimmste
Avindra Goolcharan

OK danke. Wenn Sie darüber nachdenken, wie Sie die MacOS-Lösung in die Antwort aufnehmen können, werde ich sie gerne überarbeiten!
Steve

2
Ich fand, dass für bestimmte Spaltenüberschriften das Setzen eines =nach dem Spaltennamen auf das oFlag eine plattformübergreifende Möglichkeit ist, dies zu tun. ZB ps -p ${pid} -o state=wird der Prozessstatus für ${pid}ohne den Header angezeigt. (Was ist, was die akzeptierte Antwort besagt :))
Avindra Goolcharan

2

Verwenden

ps -p <PIDs> --no-headers

um eine Liste der PIDs ohne den Header zu erhalten.


-1

Um eine Liste nur der PIDs zu erhalten, verwenden Sie:

ps -eo pid

Siehe auch man psAbschnitt 'STANDARDFORMAT SPEZIFIKATOREN' für mögliche Spalten.

Persönlich gefällt mir, wie Solaris die möglichen Spalten für das -oArgument anzeigt :

ps: option requires an argument -- o
usage: ps [ -aAdefHlcjLPyZ ] [ -o format ] [ -t termlist ]
        [ -u userlist ] [ -U userlist ] [ -G grouplist ]
        [ -p proclist ] [ -g pgrplist ] [ -s sidlist ] [ -z zonelist ] [-h lgrplist]
  'format' is one or more of:
        user ruser group rgroup uid ruid gid rgid pid ppid pgid sid taskid ctid
        pri opri pcpu pmem vsz rss osz nice class time etime stime zone zoneid
        f s c lwp nlwp psr tty addr wchan fname comm args projid project pset lgrp

1
Hiermit wird das Problem des Entfernens der angezeigten Kopfzeile nicht behoben.
Kusalananda

So interpretieren Sie "nur PID anzeigen". Einige können dies so interpretieren, dass sie nur eine Spalte auswählen, oder so, wie Sie es anscheinend interpretieren: Nur Werte.
Lambert,
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.