Setiap proses akan dicantumkan dalam output dari ps aux; apakah berlari, tidur, zombie atau berhenti.
Namun, dalam kasus Anda, sejak Anda menjalankan proses menggunakan sh abc.sh, shadalah aplikasi (shell) yang sedang berjalan dan tidak abc.sh. Karenanya, ps auxtidak akan mengandung proses abc.shkarena yang greptidak dapat menghasilkan hasil apa pun.
Jadi, cara yang benar Anda seharusnya menggunakannya adalah sebagai:
ps aux | grep sh
Ini juga dapat mengembalikan Anda proses lain yang menjalankan memiliki string shdi mana saja di output ps aux.
Anda harus mencatat bahwa proses akan "berjalan" ketika output ps auxmemiliki STATas R. Jika itu adalah sesuatu selain itu, itu tidak berjalan pada saat Anda memecat perintah untuk memeriksa proses yang berjalan. Status proses yang berbeda dapat ditemukan di halaman manual untuk ps:
D uninterruptible sleep (usually IO)
R running or runnable (on run queue)
S interruptible sleep (waiting for an event to complete)
T stopped, either by a job control signal or because it is being traced
W paging (not valid since the 2.6.xx kernel)
X dead (should never be seen)
Z defunct ("zombie") process, terminated but not reaped by its parent
Anda juga bisa menjalankan topperintah untuk memeriksa apakah proses sedang berjalan atau tidur dan jumlah CPU, RAM yang dikonsumsi. (Ini lagi akan mencantumkan proses Anda sebagai sh).
Namun, jika Anda ingin proses Anda terdaftar abc.sh, maka Anda harus memiliki baris pertama skrip yang Anda jalankan sebagai:
#!/bin/sh
sehingga shell akan tahu aplikasi apa yang digunakan untuk menjalankan skrip (sh dalam hal ini, ubah ke #!/bin/bashuntuk bash) dan kemudian berikan izin yang dapat dieksekusi untuk proses menggunakan:
chmod +x /path/to/abc.sh
mengganti /path/to/dengan lokasi abc.shfile dan kemudian jalankan abc.shmenggunakan
/path/to/abc.sh
kembali mengganti /path/to/dengan lokasi abc.shfile.
S+arti stat