美文网首页
Shell进阶

Shell进阶

作者: d3ark | 来源:发表于2016-09-07 22:29 被阅读0次

    1、shell操作环境

    A、命令查找书序(可通过type -a cmd确定)
        a、带路径命令直接执行;
        b、搜索alias别名定义命令执行;
        c、bash内置(builtin)命令执行;
        d、通过PATH环境变量搜索执行。
    
    B、登录欢迎信息
        /etc/issue        登录前提示
        /etc/issue.net  telnet登录前提示
        /etc/motd        登录成功后的每日消息
    
    C、bash环境配置文件
        login shell(tty1~tty6)读取顺序
            /etc/profile
                /etc/.bash_profile、/etc/bash_login、/etc/.profile    优先级从左到右,读取到一个后就不在读其他的
                    ~/.bashrc
        non-login shell(gnome终端)读取顺序
            ~/.bashrc
                /etc/bashrc    若有的话,可能会调用
    
        source(.)命令    重新读取环境变量
            source /etc/bashrc
            . ~/.bashrc
    
    e024bc49-1bb4-4207-aa92-193915c878a7.png

    ![Uploading 07887022-2d8c-4e3a-8549-d9cdb85db30d_762999.png . . .]
    D、终端机环境设置
    stty -a 列出当前所有设置
    stty intr ^C 设置以ctrl+c发出中断信号
    set
    echo $- 显示set的当前值
    /etc/inputrc set相关的设置文件

    E、通配符与特殊符号
        a、通配符wildcard
    
    07887022-2d8c-4e3a-8549-d9cdb85db30d.png

    b、特殊符号


    8fb3a692-2802-4209-bfe6-567886d10aa3.png

    2、数据流重定向

    标准输入(stdin),代码为0,使用<或<<;
    标准输出(stdout),代码为1,使用>或>>;
    标准错误输出(stderr),代码为2,使用2>或2>>;
    
    /dev/null垃圾桶黑洞设备
    
    标准输出与标准错误输出合并写法
    2>&1(&>),如:
        cat passwd >show 2>&1
    

    ![Uploading cbcdbda5-2914-45a3-8b8d-1c29a20cef58_827034.png . . .]
    cat passwd &> show

    命令的连续执行
        不相关命令使用分号;即可,如    sync;sync;shutdown -h now
        相关命令使用&&、||连接,如    ls passwd && cat passwd
    
    cbcdbda5-2914-45a3-8b8d-1c29a20cef58.png

    3、管道命令(pipe)

    管道命令接受前一个命令的标准输出作为下一个命令的标准输入,使用“|”连接
    
    选取命令:cut、grep
    排序命令:sort、wc、uniq
    双向重定向:tee    可以将中间数据流保存一份到文件里面,不影响后面的管道命令
        tee [-a] filename    如:
            ll /home | tee showfile | more
    字符转换命令:
        tr STR1 STR2    将STR1转化为STR2
        tr -d STR    删除信息中的STR这个字符串
        tr -s STR     替换信息中的STR这个字符串
        col -x    将信息流中的tab转换为对应的空
        join
        paste
    参数代换:xargs
        对于不支持管道的命令,xargs可以提供该命令引用标准输入,如:
            find ./ -name passwd | xagrs ls -l
    
    减号(-)在管道命令中,可以用来代替标准输出和标准输入。

    相关文章

      网友评论

          本文标题:Shell进阶

          本文链接:https://www.haomeiwen.com/subject/yixsettx.html