判断当前shell的名称
此页由Linux Wiki用户Chenxing于2008年1月24日 (星期四) 13:57的最后更改。
出自Linux Wiki
提示:此文已超过 16 年(6142 天)未更新,如发现内容过时或有误,欢迎改进:)
有时需要知道当前正在运行的是什么shell。下面介绍两个小技巧,都不是很完美,欢迎补充(左边有“编辑”)。
神奇的$0
$0返回命令行第零个参数,通常是程序名和路径。在Shell命令行状态,$0就是执行shell时的程序名了。
echo $0
然而,由前面所述的原理知,此法不能用在脚本中。另外,csh也不支持这种方法。
利用$$
$$返回当前shell的pid。可以结合ps得知当前shell的名称。
ps | grep $$ | awk '{print $4}'
此方法适用范围可能更广,且可以用于脚本中。不过注意用于脚本中时,ksh不能返回正确结果。
参考资料
本文对您有帮助?分享给更多朋友!
反馈与讨论
发现文档不全面、有错误却没时间编辑文档?想分享自己的经验或见解?欢迎在此留言、讨论。