您的位置:首页 > 运维架构 > Shell

shell基础-bash基本功能-通配符和其他特殊符号

2017-03-30 22:32 741 查看

1. 通配符

通配符主要用来匹配文件名或文件夹名,以便对文件或文件夹进行删除、查找等操作。

通配符作用
?匹配一个任意字符。
*匹配0个或任意个任意字符,也就是匹配任何内容。
[]匹配中括号内的任意一个字符。
[^]逻辑非,匹配不是中括号内的一个字符。
示例:

[abc] 表示匹配一个字符,要么a,要么b,要么c。
[a-z] 表示匹配一个小写字母。
[a-zA-Z0-9] 表示匹配一个字母或数字。
[^0-9] 表示匹配一个非数字的字符。


用法:

rm -rf *
删除当前目录中的所有内容(当前目录并不会被删除)。

ls [a-zA-Z0-9]*
显示当前目录中的以字母或数字开头的内容(子文件或子文件夹)。

ls [^0-9]?
显示当前目录中的以非数字开头的并且文件名长度为2的子文件或子文件夹。

ls [0-9]abc
显示当前目录中的以数字开头的且文件名中包含abc且长度为4的子文件或子文件夹。


2. 其他特殊符号

特殊符号作用
单引号。在单引号中,一些特殊符号将没有特殊含义。如$、`(反引号)等将失去特殊含义。
双引号。在双引号中的特殊符号拥有特殊含义。
`反引号。反引号括起来的内容是系统命令,在bash中会先执行它,并将执行结果保存在内存中。和$()的作用一样。
$()和反引号的作用一样。如echo $(date) 等价于 echo `date` 等价于 date。推荐使用\$()。
#在shell脚本文件中,#开头的行代表注释(除了第一行的#!/bin/bash)。
$用于调用变量的值。如需要调用变量name的值时,需要用$name的方式得到变量的值。
\转义符。跟在\之后的特殊符号将失去特殊含义,变为普通字符。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: