最新下载
热门教程
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
Linux 命令行通配符及转义符的实现
时间:2022-06-30 15:53:37 编辑:袖梨 来源:一聚教程网
我们想对一类文件批量操作,例如批量查看硬盘文件属性,那么正常命令会是:
[root@linuxprobe ~]# ls /dev/sda [root@linuxprobe ~]# ls /dev/sda1 [root@linuxprobe ~]# ls /dev/sda2 [root@linuxprobe ~]# ls /dev/sda3
但有些时候确实不知道分区的
通配符
星号(*)代表匹配零个或多个字符
huanyu@ubuntu:~$ ls -l /dev/sda*
问号(?)代表匹配单个字符
huanyu@ubuntu:~$ ls -l /dev/sda?
中括号内加上数字[0-9]代表匹配0~9之间的单个数字的字符,而中括号内加上字母[abc]则是代表匹配a、b、c三个字符中的任意一个字符
huanyu@ubuntu:~$ ls -l /dev/sda[0-9] huanyu@ubuntu:~$ ls -l /dev/sda[135]
[root@linuxprobe ~]# ls /dev/sda* /dev/sda /dev/sda1 /dev/sda2
[root@linuxprobe ~]# ls /dev/sda? /dev/sda1 /dev/sda2
[root@linuxprobe ~]# ls /dev/sda[0-9] /dev/sda1 /dev/sda2
[root@linuxprobe ~]# ls /dev/sda[135] /dev/sda1
转义符
反斜杠():使反斜杠后面的一个变量变为单纯的字符串
huanyu@ubuntu:~$ echo "Price is $$PRICE"
反引号(``):把其中的命令执行后返回结果
huanyu@ubuntu:~$ echo `uname -a`
示例
定义名称为PRICE的变量值为5:
[root@linuxprobe ~]# PRICE=5
想要输出”价格是5″:
[root@linuxprobe ~]# echo "Price is $PRICE" Price is 5
想要输出”价格是$5″,但因为美元符号与代表变量取值的$符号冲突了,所以报错了:
[root@linuxprobe ~]# echo "Price is $$PRICE" Price is 3767PRICE
添加一个反斜杠,将第一个$符号转义:
[root@linuxprobe ~]# echo "Price is $$PRICE" Price is $5
使用单引号,变量将不再被取值:
[root@linuxprobe ~]# echo 'Price is $$PRICE' Price is $$PRICE
执行uname -a后可以查看到本机内核的版本与架构信息(反引号里面的命令会被执行):
[root@linuxprobe ~]# echo `uname -a` Linux linuxprobe.com 3.10.0-123.el7.x86_64 #1 SMP Mon May 5 11:16:57 EDT 2014 x86_64 x86_64 x8
相关文章
- 原神5.3版本游迹怎么样 原神5.3版本绘想游迹新增活动介绍 12-23
- 王者荣耀典韦铁骨偃魂怎么样 王者荣耀典韦铁骨偃魂皮肤介绍 12-23
- 《流放之路2》巨像札而马拉斯打法技巧分享 12-23
- 《无限暖暖》日光果获得位置攻略 12-23
- 《流放之路2》巨像札而马拉斯具体位置介绍 12-23
- 《无限暖暖》灵感露珠收集大师完成方法 12-23