shell 通配符
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 通配符的更多相关文章
- Linux Shell 通配符、元字符、转义符【转帖】
作者:程默 说到shell通配符(wildcard),大家在使用时候会经常用到.下面是一个实例: 1 1 2 3 4 [chengmo@localhost ~/shell]$ ls a.txt ...
- Linux shell 通配符 / glob 模式
概念 glob 模式(globbing)也被称之为 shell 通配符,名字的起源来自于 Unix V6 中的 /etc/glob (详见 man 文档).glob 是一种特殊的模式匹配,最常见的是通 ...
- Unix Shell 通配符、转义字符、元字符、特殊字符
shell通配符: * 匹配0或多个字符 a*b a与b之间可以有任意长度的任意字符, 也可以一个也没有, 如aabcb, a01b, ab等 ? 匹配任意一个字符 a?b a与b之间有且只有一个字符 ...
- 自动化运维之shell通配符,转义符,和元字符(二)
1 shell通配符 通配符看起来有点象正则表达式语句,但是它与正则表达式不同的,不能相互混淆.把通配符理解为shell特殊代号字符就可. 二.shell元字符 shell除了有通配符之外,由shel ...
- Shell 通配符、元字符、转义符*****
说到shell通配符(wildcard),大家在使用时候会经常用到.下面是一个实例: 1 1 2 3 4 [chengmo@localhost ~/shell]$ ls a.txt b.txt ...
- 【python cookbook】【字符串与文本】3.利用shell通配符做字符串匹配
问题:当工作在Linux shell下时,使用常见的通配符模式(即,*.py.Dat[0-9]*.csv等)来对文本做匹配 解决方案:fnmatch模块提供的两个函数fnmatch().fnmatch ...
- Python: 用shell通配符匹配字符串,fnmatch/fnmatchcase
问题:想使用Unix Shell 中常用的通配符(比如*.py , Dat[0-9]*.csv 等) 去匹配文本字符串 解决方案: 1. fnmatch 模块提供了两个函数—— fnmatch() 和 ...
- linux shell通配符及if语句判断
$# 是传给脚本的参数个数 $0 是脚本本身的名字$1 是传递给该shell脚本的第一个参数$2 是传递给该shell脚本的第二个参数$@ 是传给脚本的所有参数的列表$* 是以一个单字符串显示所有向脚 ...
- shell通配符、命令代换、引号
1.通配符 (1)* :匹配多个任意字符 (2)? :匹配一个任意字符 (3)[若干字符] :匹配方括号中任意一个字符的一次出现 2.命令代换:反引号``或者$() 例1:vim test_th.sh ...
随机推荐
- hadoop中 bin/hadoop fs -ls ls: `.': No such file or directory问题
2.x版本上的使用bin/hadoop fs -ls /就有用 应该使用绝对路径就不会有问题 mkdir也是一样的 原因:-ls默认目录是在hdfs文件系统的/user/用户名(用户名就命令行@符号 ...
- 虚拟机镜像压缩(qcow2,raw)
●qcow2 格式的压缩首先,需要对虚拟机系统的剩余空间写零操作: $ dd if=/dev/zero of=/zero.dat 删除 zero.dat$ rm /zero.dat关闭虚拟机,进入虚拟 ...
- 有效利用1 on 1
2019-01-08 16:32:13 感觉1 on 1是浪费时间? 感觉1 on 1时没啥好说? 感觉老板总是不想1 on 1? 怎样才能 升职加薪? 一切都从有效的1 on 1开始!! 什么是1 ...
- 利用unittest+ddt进行接口测试(二):使用yaml文件管理测试数据
知道ddt的基本使用方法之后,练习把之前用excel文件来维护的接口测试用例改用unittest+ddt来实现. 这里我选用yaml文件来管理接口参数,开始本来想用json,但是json无法添加注释, ...
- ROS中遇到的一些问题和解决(更新)
检查 roscore 是否正常打开 [ERROR] Failed to contact master at [localhost:11311]. Retrying... [ERROR] [144653 ...
- LeetCode--020--括号匹配
题目描述: 给定一个只包括 '(',')','{','}','[',']' 的字符串,判断字符串是否有效. 有效字符串需满足: 左括号必须用相同类型的右括号闭合. 左括号必须以正确的顺序闭合. 注意空 ...
- 内核开启VF小结
2017-8-29 16:33:40 内核开启VF小结: 1. eth2上创建4个VFecho 4 > /sys/class/net/eth2/device/sriov_numvfs2. 关闭e ...
- 十分钟搞定pandas内容
目录 十分钟搞定pandas 一.创建对象 二.查看数据 三.选择器 十二.导入和保存数据 参考:http://pandas.pydata.org/pandas-docs/stable/whatsne ...
- fiddler filter过滤+断点
转自 http://blog.csdn.net/u012808234/article/details/52767470
- dp练习2
1, CF 808G Anthem of Berland 2, CF 741B Arpa's weak amphitheater and Mehrdad's valuable Hoses