linux下通配符和一些特殊符号

通配符 wildcard

通配符是由shell处理的(不是由所涉及到命令语句处理的,其实我们在shell各个命令中也没有发现有这些通配符介绍), 它只会出现在 命令的“参数”里(它不用在 命令名称里, 也不用在 操作符上)。当shell在“参数”中遇到了通配符时,shell会将其当作路径或文件名去在磁盘上搜寻可能的匹配:若符合要求的匹配存在,则进行代换(路径扩展);否则就将该通配符作为一个普通字符传递给“命令”,然后再由命令进行处理。总之,通配符 实际上就是一种shell实现的路径扩展功能。在 通配符被处理后, shell会先完成该命令的重组,然后再继续处理重组后的命令,直至执行该命令。

★ * 代表0个到无穷多个任意字符,a*b   a与b之间可以有任意长度的任意字符,也可以一个也没有,如aggb,a–b,a789b,ab

★?代表一定有一个任意字符,a?b   a与b之间必须也只能有一个字符,但只能有一个字符,可以是任意字符,如aab,a-b,abb,

★[] 代表一定有一个在中括号之内的字符(非任意字符)。例如a[xyz]b,a与b之间必须也只能有一个字符,但只能是x或y或z,如axb,ayb,azb。

★[-] 有-号在中括号内,代表在编码顺序内的任意单一字符,[0-9]代表0-9内的所有数字中的单一字符,a[0-9]b,a与b之间必须也只能有一个字符,如a0b,a2b,  a9b

★[^]中括号内有^字符,代表非括号内的其他字符,[^abc] 表示一定有一个字符,只要是非a,b,c就可以接受

★[!]同上

★{string1,string2,……}匹配string1或者string2……其一的字符串,a{abc,xyz,123}b,ab之间只能是abc,xyz,123,其中之一。

bash环境中的特殊符号

◆#批注符号,这个被使用在script当中,视为说明,其后的数据均不执行。

◆\转义符号,将“特殊字符或者通配符”还原成一般字符。

◆|管道,分隔两个管道命令的界定

◆$使用变量前导符,/目录符号,路径分隔的符号

◆!逻辑运算意义上的非

◆>  >>  数据流重定向,输出导向stdout,

◆<  << 数据流重定向,输入导向stdin,

◆‘ ’    单引号,不具有变量的置换功能

◆ “ ”   双引号,具有变量置换的功能

◆` `   中间为可以先执行的命令  也可以使用$()

◆; 在前一个命令结束时,忽略其返回值,继续执行下一个命令

◆&& 短路或,在前一个命令结束时,若返回值为ture,继续执行下一个命令

◆||   短路与,在前一个命令结束时,若返回值为false,继续执行下一个命令

 

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

(1)
sunchunjiangsunchunjiang
上一篇 2017-11-26
下一篇 2017-11-26

相关推荐

  • Linux文件查找命令详解

    Linux中在文件系统上查找符合条件的文件,实现工具有locate和find locate: 1.它是依赖于事先索引构建好的数据库进行查找的。更新它的数据库有两种方式,一种是系统定期自动更新,另一种是执行命令updatedb手动更新数据库。 注意:索引构建过程需要遍历整个根文件系统,极消耗资源 2.它的工作特性: 1.因为是基于数据库实现的,所以查找速度快(…

    Linux干货 2017-04-10
  • 第六周练习

    请详细总结vim编辑器的使用并完成以下练习题 1、复制/etc/rc.d/rc.sysinit文件至/tmp目录,将/tmp/rc.sysinit文件中的以至少一个空白字符开头的行的行首加#; 1.[root – www ~]#>cp /etc/rc.d/rc.sysinit /tmp/2.[root – www ~]#>vi /tmp…

    Linux干货 2016-12-11
  • 20161014作业

    2016/10/14作业: ##操作类: 1. 设置自己的终端提示符,要求字符终端登录时: a> 需要带颜色 b> 需要显示当前执行到了第几条命令 c> 显示当前登录终端,主机名和当前时间 2、使用shutdown命令于5分钟后重启自己的PC机 3. 学习man,学会使用a> ls递归列出/usr目录下所有文件, b> 列出目录…

    Linux干货 2016-10-20
  • ☞Nginx 代理与缓存

    Nginx 代理与缓存 代理、缓存、集群概述 缓存控制(ngx_http_proxy_module) 配置nginx代理的URI资源类型 增加X-Forwarded-For值 启用proxy缓存URL资源 封装首部(ngx_http_headers_module) 响应报文首部添加代理信息 代理调度模块(ngx_http_upstream_module) R…

    Linux干货 2016-10-30
  • 笔记–8.2–用户管理,权限管理

    ·硬链接,软链接区别 大小 链接数 设备,分区 类型 硬连接 一样大,显示的是本身的大小 会增加 不能跨分区 是一个文件,相同inode号,忘了位置可通过inode号找到源文件 软链接 不一样大,链接文件大小是路径的大小 不会增加 可以跨分区,跨设备 两个文件,不同inode号,像发小广告,忘了源连接,文件就找不到了 软链接格式:ln -s +绝对路径或相对…

    Linux干货 2016-08-05
  • Linux 系统终端

    Linux系统的主要终端主要包含:控制台终端、控制终端、串口终端、伪终端、虚拟终端。 控制台终端:在Linux 系统中,计算机显示器通常被称为控制台终端(Console)内核将信息送到控制台终端上(/dev/console), 通过与console相关联的虚拟终端将信息显示到屏幕上。再开机过程中屏幕输出的信息,这个屏幕就是Console; 控制终端:键盘,显…

    Linux干货 2016-10-19