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.