LInux Day10: bash特性

作者: 泥人吴 | 来源:发表于2018-10-11 23:55 被阅读10次

    bash及其特性:

    • 光标跳转:
    Ctrl+a:跳到命令行首
    +e:行尾
    +u:删除光标至命令行首的内容
    +k:删除光标至命令行尾的内容
    +l:清屏 clear
    
    • 命令历史:
    查看命令历史:history
    -c : 清空命令历史
    -d OFFSET [n] :删除指定位置的命令
    -w:保存历史命令至历史文件中
    命令历史的使用技巧:
    !n:执行命令历史中第n条命令
    !-n:执行命令历史中倒数第n条命令
    !!:执行上一个命令
    ! string:执行命令历史中最近一个以string开头的命令
    ! $应用上个命令的最后 一个参数;ESC, .  及 Alt+.(本地)
    

    Tab

    • 命令补全:Tab(命令搜索路径下)
    • 路径补全全:Tab

    环境变量:

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

    命令别名:

    alias:在shell中定义的别名仅在当前shell的生命周期中有效,有效范围为当前shell进程;
    alias的基本使用方法为:alias COMMANDS=‘COMMANDS [option] [ arguments]’

    $ cls
    -sh: cls: command not found
    $ alias cls=clear
    
    • 撤销命令别名,可以使用unalias命令
    $ cls
    -sh: cls: command not found
    $ alias cls=clear
    $ unalias cls
    $ cls
    -sh: cls: command not found
    

    命令替换:

    把命令中的某个子命令替换为执行结果的过程
    格式为:
    $(COMMAND)或COMMAND(反引号)
    例子1:

    $ echo "The current directory is $(pwd)"
    The current directory is /umac/ht1T/home//ywu
    $ pwd
    /umac/ht1T/home//ywu
    

    例2:date +%F命令可以查看今天的日期,我们若想建一个新文件,以今天的日期命名,则可以使用以下命令:

    $ date +%F-%H-%M
    2018-10-11-13-12
    $ touch ./file-$(date +%F-%H-%M).txt
    $ ls
    a  -aaa-  file-2018-10-11-13-13.txt  readme.txt  sort.test.save  testtouch  tmp  wy
    
    • bash支持的引号:
      :命令替换
      " ":弱引用,可以实现变量替换
      ' ':强引号,不完全变量替换

    文件名通配:

    用法:

    *:匹配任意长度的任意字符;(可以为零)
    ?:匹配任意单个字符;
    []:匹配指定范围内的任意单个字符;
    [^]:匹配指定范围外的任意单个字符;
    [::]:中括号和冒号中间加某些字母,可以表示某个范围的字符,外面再加一个中括号可表示匹配;
    [[:space:]]:空白字符;
    [[:punct:]]:标点符号;
    [[:lower:]]:小写字母;
    [[:upper:]]:大写字母;
    [[:alpha:]]:大小写字母;
    [[:digit:]]:数字;
    [[:alnum:]]:数字和大小写字母;
    [^[:space:]]:取非空白字符;
    
    • 小练习:
    $ touch a123 abc xyz x12 xyz123
    $ ls
    a123  abc  x12  xyz  xyz123
    $ ls a*
    a123  abc
    $ ls a*3
    a123
    $ ls *y*
    xyz  xyz123
    $ touch y123
    $ ls *y*
    xyz  xyz123  y123
    $ ls ?y*
    xyz  xyz123
    $ ls [a-z]*[0-9]
    a123  x12  xyz123  y123
    $ ls [^0-9]*
    a123  abc  x12  xyz  xyz123  y123
    

    友情阅读推荐:

    生信技能树公益视频合辑:学习顺序是linux,r,软件安装,geo,小技巧,ngs组学!
    请猛戳下面链接
    B站链接:https://m.bilibili.com/space/338686099

    YouTube链接:https://m.youtube.com/channel/UC67sImqK7V8tSWHMG8azIVA/playlists

    生信工程师入门最佳指南:https://mp.weixin.qq.com/s/vaX4ttaLIa19MefD86WfUA

    学徒培养:https://mp.weixin.qq.com/s/3jw3_PgZXYd7FomxEMxFmw

    相关文章

      网友评论

        本文标题:LInux Day10: bash特性

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