Pid dari shell yang berjalan diberikan oleh var $$ (dalam kebanyakan shell).
whichsh="`ps -o pid,args| awk '$1=='"$$"'{print $2}'`"
echo "$whichsh"
Menggunakan backticks untuk membuat jsh (Heirlomm shell) berfungsi.
Dalam banyak kerang tes langsung ps -o args= -p $$
bekerja, tetapi busybox ash
gagal itu (dipecahkan).
Cek yang $1
harus sama untuk $$
menghilangkan sebagian besar kesalahan positif.
Yang terakhir ;:
digunakan untuk menjaga agar shell tetap berjalan untuk ksh dan zsh.
Tes pada lebih banyak sistem akan membantu, tolong beri komentar jika itu tidak berhasil untuk Anda.
Tidak bekerja dalam csh
jenis kerang.