09命令行通配符和转义字符
1. 命令行的通配符
通配符就是通用的匹配信息的符号。
星号(*) 代表匹配零个或多个字符
问号(?) 代表匹配单个字符
中括号加数字[0-9] 代表匹配 0~9之间的单个数字的字符
中括号加字母[abc] 代表匹配a、b、c三个字符中的任意一个字符
//查看dev中以sda开头的文件
[root@localhost /]# ls -l /dev/sda*
brw-rw----. 1 root disk 8, 0 Jun 13 13:47 /dev/sda
brw-rw----. 1 root disk 8, 1 Jun 13 13:47 /dev/sda1
brw-rw----. 1 root disk 8, 2 Jun 13 13:47 /dev/sda2
//查看dev中以sda开头并仅跟一个字符的文件
[root@localhost /]# ls -l /dev/sda?
brw-rw----. 1 root disk 8, 1 Jun 13 13:47 /dev/sda1
brw-rw----. 1 root disk 8, 2 Jun 13 13:47 /dev/sda2
//查看dev中以sda开头并仅跟一个数字字符的文件
[root@localhost /]# ls -l /dev/sda[0-9]
brw-rw----. 1 root disk 8, 1 Jun 13 13:47 /dev/sda1
brw-rw----. 1 root disk 8, 2 Jun 13 13:47 /dev/sda2
//查看dev中以sda开头并仅跟数字1、3或者5的文件
[root@localhost /]# ls -l /dev/sda[135]
brw-rw----. 1 root disk 8, 1 Jun 13 13:47 /dev/sda1
2. 常用的转义字符
反斜杠(\) 使反斜杠后面的一个变量变为单纯的字符串
单引号('') 转义其中所有的变量为单纯的字符串
双引号("") 保留其中的变量属性,不进行转义处理
反引号(``) 把其中的命令执行后返回结果
[root@localhost /]# PRICE=5
//单引号中的内容直接当成单纯的字符串
[root@localhost /]# echo 'Price is $PRICE'
Price is $PRICE
//双引号保留其中的变量属性,不进行转义处理
[root@localhost /]# echo "Price is $PRICE"
Price is 5
//反斜杠转义
[root@localhost /]# echo "Price is \$$PRICE"
Price is $5
道虽迩,不行不至;事虽小,不为不成。