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. zzulioj 1206 字符串的修改 (字符串修改)

    不难,理解一下直接过,代码如下: #include<stdio.h> #include<string.h> #include<math.h> #include< ...

  2. Linux Ubuntu下用Android NDK 生成独立交叉编译链

    本文主要介绍使用Android NDK生成独立交叉编译链,然后使用独立交叉编译链编译Android程序 下载NDK 下载与自己操作系统相吻合的版本 下载地址 解压到安装目录(如~/myndk): ta ...

  3. Flask请求上下文request

  4. Codeforces 958C3 - Encryption (hard)

    C3 - Encryption (hard) 思路: 记sum[i]表示0 - i 的和对 p 取模的值. 1.如果k * p > n,那么与C2的做法一致,O(k*p*n)复杂度低于1e8. ...

  5. Run-time code to create charts:

    tChart1.Series.Clear(); tChart1.Series.Add(new Steema.TeeChart.Styles.Bar());tChart1.Series[0].Clear ...

  6. MyEclipse下自定义(支持html5的)JSP模板--JSP

    需求:由于某些Mclipse版本发行的比较早,所以在有些版本(比如Mclipse2014,至于其他版本博主不知能不能创建html5格式的JSP页面)里创建JSP页面时html部分不是html5格式的. ...

  7. LeetCode--350--两个数组的交集2

    问题描述: 给定两个数组,编写一个函数来计算它们的交集. 示例 1: 输入: nums1 = [1,2,2,1], nums2 = [2,2] 输出: [2,2] 示例 2: 输入: nums1 = ...

  8. mat 使用 分析 oom 使用 Eclipse Memory Analyzer 进行堆转储文件分析

    概述 对于大型 JAVA 应用程序来说,再精细的测试也难以堵住所有的漏洞,即便我们在测试阶段进行了大量卓有成效的工作,很多问题还是会在生产环境下暴露出来,并且很难在测试环境中进行重现.JVM 能够记录 ...

  9. canvas学习之小球动画

    项目地址:http://pan.baidu.com/s/1skZGPgL 最近学习使用canvas做动画效果,主要原理就是创建一个小球对象,然后小球对象有一个moveball方法,每次让小球沿着随机路 ...

  10. 关于Android 主题的那些事

    最近遇到了一个问题,主题的ActionBar的Title 颜色是黑色的 但是我的主界面由于用的是CoordinateLayot所以是白色的 整个黑色的就很难看 所以也想要把ActionBar 的Tit ...