Bash中的通配符

'?'
匹配一个任意字符
'*'
匹配0个或任意多个字符,也就是可以匹配任何内容
'[]'
匹配括号中任意一个字符。例如[abc]代表一定匹配一个字符,或者是a,或者是b,或者是c
'[-]'
匹配括号中任意一个字符,'-'代表一个范围,例如[a-z]代表匹配一个小写字母
'[^]'
逻辑非,表示匹配不是括号里面的一个字符,例如[^0-9]代表匹配一个不是数字的字符
[root@ssgao1987 ssgao]# ls dzp*
dzp  dzp2  dzp234
[root@ssgao1987 ssgao]# ls dzp?
dzp2
[root@ssgao1987 ssgao]# ls dzp[0-9]
dzp2
[root@ssgao1987 ssgao]# ls dzp[0-9]*
dzp2  dzp234

Bash中其他特殊符号

''
单引号,在单引号中所有的特殊符号,比如'$'或'·'(反引号)都没有特殊含义
""
双引号,在双引号中特殊符号都没有特殊含义,但是"$","`","\"是例外,
拥有"调用变量的值","引用命令"和"转义符"的特殊含义
'``'
反引号。反引号括起来的内容是系统命令,在Bash中会先执行它。和$()作用一样,不过推荐使用$(),因为反引号非常容易出错。
'$()'
和反引号作用一样,用来引用系统命令
'#'
在Shell脚本中,#开头的行代表注释
'$'
用于调用变量的值,如需要调用变量name的值时,需要$name方式得到变量的值
'\'
转义符,跟在\之后的特殊符号将失去特殊含义,变为普通字符。如\$将输出’$‘符号,而不当做是变量引用
[root@ssgao1987 ssgao]# name=ssgao
[root@ssgao1987 ssgao]# echo $name
ssgao
[root@ssgao1987 ssgao]# echo '$name'
$name
[root@ssgao1987 ssgao]# echo "$name"
ssgao
-------------------------
[root@ssgao1987 ssgao]# command=ls
[root@ssgao1987 ssgao]# echo "$command"
ls
[root@ssgao1987 ssgao]# command=`ls` (单引号)
[root@ssgao1987 ssgao]# echo "$command"
dzp
dzp2
dzp234
------------------------
[root@ssgao1987 ssgao]# command=$(ls)
[root@ssgao1987 ssgao]# echo "command"
command
[root@ssgao1987 ssgao]# echo "$command"
dzp
dzp2
dzp234

shell 通配符的更多相关文章

  1. Linux Shell 通配符、元字符、转义符【转帖】

    作者:程默 说到shell通配符(wildcard),大家在使用时候会经常用到.下面是一个实例: 1   1 2 3 4 [chengmo@localhost ~/shell]$ ls a.txt  ...

  2. Linux shell 通配符 / glob 模式

    概念 glob 模式(globbing)也被称之为 shell 通配符,名字的起源来自于 Unix V6 中的 /etc/glob (详见 man 文档).glob 是一种特殊的模式匹配,最常见的是通 ...

  3. Unix Shell 通配符、转义字符、元字符、特殊字符

    shell通配符: * 匹配0或多个字符 a*b a与b之间可以有任意长度的任意字符, 也可以一个也没有, 如aabcb, a01b, ab等 ? 匹配任意一个字符 a?b a与b之间有且只有一个字符 ...

  4. 自动化运维之shell通配符,转义符,和元字符(二)

    1 shell通配符 通配符看起来有点象正则表达式语句,但是它与正则表达式不同的,不能相互混淆.把通配符理解为shell特殊代号字符就可. 二.shell元字符 shell除了有通配符之外,由shel ...

  5. Shell 通配符、元字符、转义符*****

    说到shell通配符(wildcard),大家在使用时候会经常用到.下面是一个实例: 1   1 2 3 4 [chengmo@localhost ~/shell]$ ls a.txt  b.txt  ...

  6. 【python cookbook】【字符串与文本】3.利用shell通配符做字符串匹配

    问题:当工作在Linux shell下时,使用常见的通配符模式(即,*.py.Dat[0-9]*.csv等)来对文本做匹配 解决方案:fnmatch模块提供的两个函数fnmatch().fnmatch ...

  7. Python: 用shell通配符匹配字符串,fnmatch/fnmatchcase

    问题:想使用Unix Shell 中常用的通配符(比如*.py , Dat[0-9]*.csv 等) 去匹配文本字符串 解决方案: 1. fnmatch 模块提供了两个函数—— fnmatch() 和 ...

  8. linux shell通配符及if语句判断

    $# 是传给脚本的参数个数 $0 是脚本本身的名字$1 是传递给该shell脚本的第一个参数$2 是传递给该shell脚本的第二个参数$@ 是传给脚本的所有参数的列表$* 是以一个单字符串显示所有向脚 ...

  9. shell通配符、命令代换、引号

    1.通配符 (1)* :匹配多个任意字符 (2)? :匹配一个任意字符 (3)[若干字符] :匹配方括号中任意一个字符的一次出现 2.命令代换:反引号``或者$() 例1:vim test_th.sh ...

随机推荐

  1. [html]自定义滚动条风格

    webkit: <style type="text/css"> *{ margin: 0; padding: 0; } ::-webkit-scrollbar { wi ...

  2. vue中的slot插槽

    插槽,也就是slot,是组件的一块HTML模板,这块模板显示不显示.以及怎样显示由父组件来决定. 实际上,一个slot最核心的两个问题这里就点出来了,是显示不显示和怎样显示. 1.navigation ...

  3. 《剑指offer》第五十六题(数组中唯一只出现一次的数字)

    // 面试题56(二):数组中唯一只出现一次的数字 // 题目:在一个数组中除了一个数字只出现一次之外,其他数字都出现了三次.请 // 找出那个吃出现一次的数字. #include <iostr ...

  4. tf一些函数

    1. tf.reduce_mean(a) : 求平均值 2. tf.truncated_normal([3,2],stddev=0.1) : 从正态分布中输出随机值,标准差为0,1,构造矩阵为3*2的 ...

  5. MySQL学习(十六)

    MySQL高级部分 触发器 触发器是一类特殊的事务,可以监视某种数据操作(insert/update/delete),并触发相关的操作(insert/update/delete) 触发器创建语法之4要 ...

  6. jquery将表单序列化json对象

    $.fn.serializeObject = function () { var obj = {}; var count = 0; $.each(this.serializeArray(), func ...

  7. Python Yaml 学习

    最近开始使用Python3.x,所有今后无特殊说明,Python代表的就是Python3.x 最近在看代码时发现有人用Yaml —— Yet Another Markup Language :另一种标 ...

  8. USBCAN的使用和上位机开发(MFC)

    USBCAN使用手册 参见:https://blog.51cto.com/12572800/2062839 1. USB CAN软件安装与硬件接线 USB CAN是常用的CAN测试工具.它的软件资料存 ...

  9. 20170821xlVBA跨表公式套用

    Public Sub CopyModelHideBlankRows() AppSettings Dim StartTime As Variant Dim UsedTime As Variant Sta ...

  10. 【IDEA】【1】准备工作

    1,官方网址(https://www.jetbrains.com/idea/) 2,网盘地址(为ideaIU-2018.2.5) 链接:https://pan.baidu.com/s/1oLgY_Pb ...