zoukankan      html  css  js  c++  java
  • 查看当前使用的shell

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

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


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

     

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

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

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

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

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

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

    六、先查看当前shell的pid,再定位到此shell进程
    [jack@localhost ~]$ echo $$
    3052
    [jack@localhost ~]$ 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

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


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

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

  • 相关阅读:
    PHP实现无限极分类
    html2canvas生成并下载图片
    一次线上问题引发的过程回顾和思考,以更换两台服务器结束
    Intellij IDEA启动项目报Command line is too long. Shorten command line for XXXApplication or also for
    mq 消费消息 与发送消息传参问题
    idea 创建不了 java 文件
    Java switch 中如何使用枚举?
    Collections排序
    在idea 设置 git 的用户名
    mongodb添加字段和创建自增主键
  • 原文地址:https://www.cnblogs.com/mliudong/p/4164348.html
Copyright © 2011-2022 走看看