二、(4)bash的基础特性之:alias命令及文件名通配

alias命令

在bash中,允许用户使用和创建命令的别名

  • 用法:
  1. 查看:可以使用alias命令来获取当前可用的命令别名:
    搜狗截图20180112121716
    如第一行:alias cp=’cp -i’,将cp -i命令定义别名为:cp
  2. 创建:上图中,alias所展示的也是创建别名的方法,即:alias NAME=’COMMAND’
    搜狗截图20180112122433
    注意:图中举例将ls -l命令创建别名为ls,此时原命令ls被隐藏,如果要运行原命令,则需使用\COMMAND
  3. 另外值得注意点是,此处定义的别名仅对当前shell进程有效
    搜狗截图20180112123802
  4. 撤销别名:unalias NAME
    搜狗截图20180112124307

文件名通配

当在使用命令行时,shell提供了一套完整的字符串模式匹配规则,或者称之为元字符
当shell遇到上述字符时,就会把它们当作特殊字符来处理,而非文件名中的普通字符。这样就可以用它们来匹配相应的文件名。

  • 用法:
  1. *:匹配任意长度的任意字符(可为0个)
  2. ?:匹配任意单个字符(不可为0个)
  3. []:匹配指定范围内的任意单个字符,以下是几种常用特殊格式:
    [a-z],[A-Z],[0-9],[a-z0-9],注意:匹配不区分大小写,下文将举例说明
    [[:upper:]]:所有大写字母
    [[:lower:]]:所有小写字母
    [[:alpha:]]:所有字母
    [[:alnum:]]:所有的字母和数字
    [[:punct:]]:所有标点符号
  4. [^]:匹配指定范围外的任意单个字符,如:
    [^0-9]
    [^[:upper:]]
    [^[:alnum:]]
  • 示例:
  1. 显示/var目录下所有以l开头,以一个小写字母结尾,且中间至少出现一位数字(可以有其他字符)的文件或目录:
    搜狗截图20180112193942
  2. 显示/etc目录下,以任意一个数字开头,且以非数字结尾的文件或目录:
    搜狗截图20180112194721
  3. 显示/etc目录下,以非字母开头,后面跟了一个字母以及其他任意长度任意字符的文件或目录:
    搜狗截图20180112200108
    值得注意点是,此处的[a-z][A-Z]的匹配效果不区分大小写,但会出现如下情况:
    搜狗截图20180112200421
    此处的[^A-Z]所表示的是除大写字母A到Z以外的任意字符,需要特别注意
  4. 复制/etc目录下所有以p开头,以非数字结尾的文件或目录到/tmp/mytest1目录中:
    搜狗截图20180112202928
  5. 复制/etc目录下所有以.d结尾的文件或目录至/tmp/mytest2目录中:
    搜狗截图20180112203310
  6. 复制/etc目录下所有以lmn开头,以.conf结尾的文件至/tmp/mytest3目录中:
    搜狗截图20180112203840

本文来自投稿,不代表Linux运维部落立场,如若转载,请注明出处:http://www.178linux.com/91065

(1)
ZSZS
上一篇 2018-01-12
下一篇 2018-01-12

相关推荐

  • CentOS 系统自动化安装

    CentOS 系统自动化安装 概述:     系统安装过程     配置anaconda     自动化安装系统 CentOS 系统安装: 1.启动流程: bootloader–>kernel(initrd)–>rootfs–>anaconda(…

    Linux干货 2016-09-21
  • 系统无法正常启动的解决之道

    先来看下配置文件的格式: [root@centos6 ~]# uname -r 2.6.32-642.el6.x86_64 [root@centos6 ~]# cat /boot/grub/grub.conf  # Note that you do&…

    Linux干货 2016-09-19
  • bash 函数

        函数可以让多条shell的命令组成语句块,实现代码重用和模块化编程。让我们在不用重复编写一些脚本,下面让我们来了解函数。 1,函数的简介 函数在脚本中使用应先定义,声明,再可以调用。 函数function 是由若干条shell 命令组成的语句块,实现代码重用和模块化编程。 函数与shell 程序形式上是相似的,…

    Linux干货 2016-08-24
  • shell脚本之数组

    认识数组:    变量是存储单个元素的内存空间,而数组就是多个变量的合集,是一串连续的空间,但是,整个数组只能有一个名字。    数组内的数据都有指定的索引,以找到数组内指定的数据。索引的编号是从0开始,依次递增(0,1,2,3…),属于数值索引。索引也支持自定义的格式,而不仅是数值格式的索引,即为关联索引…

    Linux干货 2016-08-26
  • 马哥教育网络班21期-第7周课程练习

    第7周课程练习 创建一个10G分区,并格式为ext4文件系统; 添加一块硬盘sdb 要求其block大小为2048,       预留空间百分比为2, 卷标为MYDATA, 默认挂载属性包含acl; # mke2fs -t ext4 -b 2048 -L 'MYDATA' -m 2 # mount -o ac…

    Linux干货 2016-10-09