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.