• 文件名通配


    命令别名

    alias cls='clear'

    在shell中定义的别名仅在当前shell生命周期中有效;

    别名的有效范围:当前shell进程

    unalias cls

    CMD 使用命令本身

    命令替换 $(pwd) , 反引号:`pwd`

    把命令中某个子命令替换为其执行结果的过程

    echo "The current directory is $(pwd)."

    touch ./file-$(date +%F-%H-%M-%S).txt

    bash支持的引号:

    ``:命令替换

    "":弱引用,可以实现变量替换

    '':强引用,不完成变量替换

    文件名通配,globbing

    *,匹配任意长度的任意字符

    ?,匹配任意单个字符

    [],匹配指定范围内的任意单个字符

      [abc],[a-m],[a-z],[A-Z],[0-9],[a-zA-Z],[0-9a-zA-Z]

      [:space:],表示空白字符

      [:punct:],表示所有标点符号

      [:lower:],表示小写字母

      [:upper:],表示大写字母

      [:alpha:],表示大小写字母

      ^[:alpha:],表示非字母

      [:digit:],表示数字

      [:alnum:],表示数字和大小写字母(alpha number)

    #man 7 glob

    [^],脱字符,匹配指定范围外的任意单个字符

    以一个字母开头,后面跟数字的文件:ls [[:alpha:]][[:digit:]]*

    以a开头,后面跟任意字符的文件:ls a*

    以a开头,以3结尾的文件:ls a*3

    以字母开头,后面跟任意数字的文件:ls [a-zA-Z][0-9]*

    以a开头,后面跟一个数字:ls a[0-9]*

    以任意一个字符开头,后面跟一个y,又跟其他任意字符的文件:ls ?y*

    以字母开头,中间跟任意字符,以数字结尾: ls [a-zA-Z]*[0-9]

    以非数字开头的所有文件:ls [^0-9]*

    以字母开头,中间包含空白字符,以字母结尾的文件:ls [[:alpha:]]*[[:space:]]*[[:alpha:]]

    练习:

    1.显示所有以a或m开头的文件:ls [am]*

    2.显示所有文件名中包含了数字的文件:ls *[0-9]*

    3.显示所有以数字结尾且文件名中不包含空白的文件:正则表达式

    4.显示文件名中包含了非字母或数字的特殊符号的文件:ls *[^[:alnum:]]*

  • 相关阅读:
    二叉搜索树第k个节点
    序列化二叉树
    atoi()和stoi()函数
    02.规划过程组表格-风险数据表
    02.规划过程组表格-风险概率和影响评估
    02.规划过程组表格-风险登记册
    02.规划过程组表格-风险管理计划
    02.规划过程组表格-沟通管理计划
    02.规划过程组表格-人力资源管理计划
    02.规划过程组表格-责任分配矩阵
  • 原文地址:https://www.cnblogs.com/isunny/p/5836843.html
Copyright © 2020-2023  润新知