查看当前使用的shell

ps |  grep $$  |  awk ‘{print $4}‘

不带参数的ps命令显示和当前终端有关的进程状况
$$变量存储当前进程的PID
ps第四列是进程所使用的命令,如果是Shell,那么显示shell名,比如sh/ksh等
awk ‘{print $4}‘就是只显示第四列的值

PS:用echo $SHELL可以查看系统默认的shell

查看当前发行版可以使用的shell
[[email protected] ~]$ cat /etc/shells 
/bin/sh
/bin/bash
/sbin/nologin

查看当前使用的shell
一、最常用的查看shell的命令,但不能实时反映当前shell
[[email protected] ~]$ echo $SHELL
/bin/bash

二、下面这个用法并不是所有shell都支持
[[email protected] ~]$ echo $0
bash

三、环境变量中shell的匹配查找
[[email protected] ~]$ env | grep SHELL
SHELL=/bin/bash

四、口令文件中shell的匹配查找
[[email protected] ~]$ cat /etc/passwd | grep jack
jack:x:500:500:mengfei:/home/jack:/bin/bash

五、查看当前进程
[[email protected] ~]$ ps
PID TTY          TIME CMD
3052 pts/0    00:00:00 bash
3254 pts/0    00:00:00 ps

六、先查看当前shell的pid,再定位到此shell进程
[[email protected] ~]$ echo $$
3052
[[email protected] ~]$ ps -ef | grep 3052
jack        3052 3047 0 11:33 pts/0    00:00:00 bash
jack        3420 3052 0 11:57 pts/0    00:00:00 ps -ef
jack        3421 3052 0 11:57 pts/0    00:00:00 grep 3052

附:一条命令即可实现:
[[email protected] ~]$ ps -ef | grep `echo $$` | grep -v grep | grep -v ps
jack        3052 3047 0 11:33 pts/0    00:00:00 bash

七、输入一条不存的命令,查看出错的shell提示
[[email protected] ~]$ tom
bash: tom: command not found

原帖:http://rickie622.blog.163.com/blog/static/212388112011213407503/

时间: 2024-10-09 08:54:44

查看当前使用的shell的相关文章

如何查看系统内置的shell命令及帮助信息

1.打开终端,输入help命令可以查看系统默认的shell(通常是bash)的内置的shell命令列表: [[email protected] ~]$ help GNU bash, version 4.1.2(1)-release (x86_64-redhat-linux-gnu) These shell commands are defined internally. Type `help' to see this list. Type `help name' to find out more

查看IP访问量的shell脚本汇总

第一部分,1,查看TCP连接状态 netstat -nat |awk '{print $6}'|sort|uniq -c|sort -rn netstat -n | awk '/^tcp/ {++S[$NF]};END {for(a in S) print a, S[a]}' netstat -n | awk '/^tcp/ {++state[$NF]}; END {for(key in state) print key,"\t",state[key]}' netstat -n | a

Linux下查看所有用户(shell脚本获取)

在Linux系统中,使用者账号管理最重要的两个文件是/etc/password和/etc/shadow.在/etc/password文件中,每一行都代表一个账号,但是有很多账号是系统账号.比如:bin.adm等,还有管理员账号root.其余的为一般用户账号.每一行的组成有(以:进行分割):1 账号名称:2 密码(与/etc/shadow结合):3 UID 使用者ID:其中0为root用户,1~499为系统用户账号:500+为一般使用者账号. 因此,可以按照UID的范围获取Linux下面所有的用户

查看当前支持的shell

/etc/shells [[email protected] ~]# more /etc/shells /bin/sh /bin/bash /sbin/nologin /usr/bin/sh /usr/bin/bash /usr/sbin/nologin /bin/tcsh /bin/csh echo -e 相关转义符 \\ 输入\ \a 输出警告音 \b 退格,即向左删除一个字符 \c 取消输出行末的换行符,和-n选项一致 \e Esc \f 换页符 \n 换行 \r 回车 \t 制表,即Ta

adb命令查看报名和查看手机分辨率

打开所要查看的应用包名: $ adb shell dumpsys activity top | head -n 10 TASK com.ss.android.article.news id=5 ACTIVITY com.ss.android.article.news/com.ss.android.article.base.activity.DetailActivity 4407b468 pid=2714 Local FragmentActivity 42df3028 State: mCreate

Linux shell基础

shell是核心程序kernel之外的指令解析器,是一个程序,同事是一种命令语言和程序设计语言 --shell是命令解析器,用户输入命令,它去解析. shell类型 ash,bash,ksh,csh,tcsh --cat qkxue.net/etc/shells 查看系统下的shell --echo $SHELL 查看当前用户运行的shell shell中可以运行子shell --在命令行键入 1126.www.qixoo.qixoo.com/bin/dash 执行子shell --在子shel

bash shell学习 01(配置和启动脚本)

bash是 Bourne Again Shell简称 ,从unix系统的sh发展而来 查看当前shellecho $SHELL查看系统支持的shellcat /etc/shells cd /binls -la *sh 一. bash shell的配置变量可分为自定义变量和环境变量他们作用范围不同set 可以查看所有变量set|more 查看 enter一行一行查看set|less enter换行 pagedown换页 q退出 env只能查看环境变量 bash shell的设置方式1.通过自定义变

linux shell编程

1.什么是shell 2. 还是hello world程序 3. shell中的变量 3.1 系统变量 3.2 用户定义变量 3.2.1 用户定义变量规则 3.2.3 shell如何使用变量 3.2.3 全局变量 vs 局部变量 4. shell编程中的控制结构 4.1 条件判定 4.1.1 简单条件判定 4.1.2 组合判定 4.2  if - else 4.3 for 4.4 while 4.5 case 5. shell中的函数 5.1 函数声明和定义 5.2 函数调用 6. shell脚

adb & adb shell 相关命令

在Mac上配置adb命令 在Mac OS中使用adb命令时,应进行变量配置,步骤如下: 一.终端中输入 cd ~ 二.输入touch .bash_profile 回车 touch:如果没有,则创建文件,如果有,更新一下文件时间 三.输入open -e .bash_profile open:打开文件 回车后会在TextEdit中打开这个文件(如果未配置过环境变量,应该是个空白文件).在文件中加如以下内容 export PATH=${PATH}:/Users/admin/Applications/a