Apa arti perintah `ps` ini?


1
 ps -e | grep -c '^'

Apapun artinya aku punya 166

Saya tersesat dengan '^' dan tidak ingat di mana saya melihatnya

Jawaban:


5

Opsi -c( --count) untuk grepmencetak jumlah kecocokan.

Ini ^adalah metacharacter ekspresi reguler yang mewakili awal garis (dan tidak cocok dengan karakter sebenarnya).

Perintah Anda menunjukkan jumlah semua proses, seperti yang terlihat oleh ps.

Perhatikan bahwa menjalankan perintah yang sama, menghapus -copsi dari grep, akan menampilkan output aktual yang menjadi dasar perhitungan Anda.


Terima kasih, itulah yang saya pikirkan tetapi saya mempertanyakan diri saya dan meskipun tidak mungkin ...

3

Tanda sisipan ^adalah jangkar garis ekspresi reguler - ia membatasi kecocokan hanya terjadi pada awal garis.

Pada contoh yang Anda berikan, ada pola kosong setelah jangkar, sehingga cocok dengan garis yang dimulai dengan apa pun - membuatnya setara dengan hanya menggunakan grep -c ''

Either way mengembalikan jumlah baris - setara dengan melakukan ps -e | wc -l


Grep -c tidak menampilkan hasil apa pun untuk saya, dan ps | wc -l output 4 dibandingkan dengan ps -e | grep -c '^' menghasilkan 166

@homomoto maaf saya tidak bermaksud mengatakan itu psdan ps -eakan memberikan hasil yang sama - jelas mereka tidak akan melakukannya. Maksud saya, itu ps <whatever options> | grep -c ''akan setara denganps <same options> | wc -l
steeldriver
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.