bash特性

bash特性

shell:外壳
GUI:Gnome,kde,xfce
CLI:sh,csh,ksh,bash,tcsh,zsh

程序:进程
进程:在每个进程看来,当前主机上只存在内核和当前进程
进程是程序的副本,进程是程序的执行实例

shell 子shell

bash:
1、命令历史、命令补全
2、管道、重定向
3、命令别名
4、命令编辑
5、命令行展开
6、文件名统配
7、变量
8、编程


命令行编辑:
    命令光标跳转:
        Ctrl+a:跳到命令行首
        Ctrl+e:跳到命令行尾
        Ctrl+u:删除光标至命令行首的内容
        Ctrl+k:删除光标至命令行尾的内容
        Ctrl+l:清屏

命令历史:
    查看命令历史:history
        -c:清空命令历史
        -d: OFFSET [N]:删除指定位置的命令
            history -d 500 10
        -w:保存命令历史至历史文件中
        


环境变量:
    PATH:命令搜索路径
    HISTSIZE:命令历史缓冲区大小



命令历史的使用技巧:
    !n: 执行命令历史中的第n条命令
    !-n :执行命令历史中的倒数第n条命令
    !!:执行上一条命令
    !string:执行命令历史中最近一个以指定字符串开头的命令
    !$引用上一条命令的最后一个参数(ESC放开,按点)
    ESC,.

命令补全:

命令别名:alias
    alias  CMDALIAS=COMMAND [options] [arguments]
    在shell中定义的别名仅在当前shell生命周期中有效;
    unalias 取消别名
    unalias CMDALIAS

命令替换:
    $(COMMAND), 反引号`COMMAND`
    把命令中某个子命令替换为命令执行结果
    touch ./file-$(date +%F-%H-%M-%S).txt

bash支持的引号:
    ``:命令替换
    "":弱引用,可以实现变量替换
    '':强引用,不完成变量替换

文件名通配:globbing
    * :任意长度的任意字符
    ?:任意单个字符
    []:匹配指定范围内的任意单个字符
        [abc] [a-m] [a-z] [0-9] [a-zA-Z]
    ^:取反
    [:space:]:空白字符
    [:punct:]:标点符号
    [:lower:]:小写字母
    [:upper:]:大写字母
    [:alpha:]:大小写字母
    [:digit:]:数字
    [:alnum:]:数字和大小写字母

    # man 7 glob 查看

你可能感兴趣的:(bash特性)