Menonaktifkan nama kolom dalam output ps


23

Bagaimana memformat output dari ps -pperintah?

Untuk tidak menunjukkan kepada saya sesuatu seperti ini:

PID TTY                TIME CMD

tapi hanya PID.

Saya menggunakan Linux.

Jawaban:



21

Gunakan --no-headersuntuk menghilangkan baris tajuk.

Output asli:

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

Dengan --no-headers:

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

Menggabungkan dengan -p:

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

The manhalaman untuk psjelas dokumen ini:

man ps

[snip]

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

2
Tidak berfungsi pada makro. Naturall -____-
Avindra Goolcharan

Memang. Tidak diharapkan bekerja di MacOS. Pertanyaan semata-mata menyangkut Linux, seperti yang disorot oleh poster aslinya.
steve

2
np steve. Hanya mendokumentasikannya di sini untuk pembaca masa depan. Perbedaan kecil antara utilitas BSD dan Linux sangat menjengkelkan. sed adalah yang terburuk
Avindra Goolcharan

oke terima kasih. jika Anda memiliki pemikiran tentang cara memasukkan solusi MacOS sebagai jawaban, saya akan dengan senang hati merevisinya!
steve

2
saya menemukan bahwa untuk tajuk kolom tertentu, menempatkan =setelah nama kolom ke obendera adalah cara lintas platform untuk melakukan ini. Misalnya, ps -p ${pid} -o state=akan menampilkan status proses untuk ${pid}, tanpa header. (Itulah yang dinyatakan oleh jawaban yang diterima :))
Avindra Goolcharan

2

Menggunakan

ps -p <PIDs> --no-headers

untuk mendapatkan daftar PID tanpa tajuk.


-1

Untuk mendapatkan daftar hanya PID yang digunakan:

ps -eo pid

Lihat juga man psbagian 'SPESIFIKASI FORMAT STANDAR' untuk kemungkinan kolum.

Secara pribadi saya suka cara Solaris menunjukkan kolom yang mungkin digunakan untuk -oargumen:

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
Ini tidak membahas masalah menghapus tajuk yang ditampilkan.
Kusalananda

Begitulah cara Anda menafsirkan 'hanya tampilkan PID'. Beberapa dapat menafsirkan ini hanya dengan memilih satu kolom, atau seperti yang Anda tafsirkan: hanya nilai.
Lambert
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.