检查您在 Linux 上使用的 Shell 的不同方法
shell 是一个程序,用户可以通过它与操作系统进行交互。 Linux 通常提供 4 种类型的 Shell Bourne Shell ( /bin/sh或/sbin/sh )、C Shell ( /bin/csh )、Korn Shell ( /bin/ksh )、GNU Bourne-Again Shell ( /垃圾箱/bash )。本文即将检查我们使用的是哪个shell。在这里,我们讨论了可以检查我们正在使用的 shell 的五种方法。
1)使用echo命令:基本上,echo命令用于打印输入字符串,但它也用于打印我们在命令的帮助下使用的shell的名称。
$ echo "My Shell name is: $SHELL"
2)使用ps命令: ps命令代表“进程状态”。用于检查当前运行状态及其PID。如果 ps 命令通常在 shell 中运行,那么它只会告诉 shell 的名称。
$ ps
第一列告诉PID,最后一列告诉shell 的类型,即bash。
3) 通过查看/etc/passwd 文件:这告诉用户的特征,就像它的名字、外壳和ID。此命令与 grep 命令一起使用。
$ grep "^$USER" /etc/passwd
4) 使用lsof命令: lsof 代表 LIST OF OPEN FILES。当我们想要系统中打开的文件列表时使用此命令。通过使用特定标志,它提供了一个指向 shell 的指针,并告诉我们我们正在使用哪个 shell 以及该特定标志是 -p $$。命令看起来像。
$ lsof -p $$
正如您在第 3 行中清楚地看到的那样,它告诉我们我们正在使用的 shell。
5)使用readlink /proc/$$/exe: readlink用于打印文件名。因此,在此帮助下,我们使用 /proc/$$/exe 打印当前 shell 的位置。命令可以写成
$ readlink /proc/$$/exe