文件和目录管理涉及的命令比较多,在现存的各个版本的Linux系统中,各命令功能大体相同。
在Linux文件系统中,可以使用通配符来匹配多个选择。常用的通配符及其说明如下表所示。
例如当前目录下存在cars 、cat、can、cannon、truck、bus和bike等几个文件,要列出所有以字母"c"开头的文件,可使用命令:
#touch car cats can cannon truck bus bike
#ls c*
cars can cannon
列出所有以字母"b"开头的文件名,命令行为:
#ls b*
bike bus
列出所有第一个字母为"c",最后一个字母为"n"的文件,命令行为:
#ls c*n
can cannon
列出包含字母"a"的所有文件,命令行为:
#ls *a*
cars cat can cannon
列出当前目录下的所有文件,命令行为:
#ls *
bike bus cars cat can cannon truck
通配符"?"只能匹配任意一个字符。例如列出上例中所有第三个字母是"n"的文件,命令行为:
#ls ??n*
can cannon
列出第一个字母是"b",第三个字母是"s"的所有文件,命令行为:
#ls b?s*
bus
中括号表示一个匹配的字符集,例如[123456]与[1-6]都表示数字1、2、3、4、5和6。大写字母A到D之间的任意一个字符可用[A-D]表示。多个集合之间可以用逗号分隔,例如[1-10,a-z,A-Z]表示数字1到10,小写字母a到小写字母z及大写字母A到大写字母Z。一个集合中若有前缀"!",则表示除了集合中包含的字符以外的所有字符组成的集合。如表示所有的辅音组成的字符集可写成[!aeiou]。例如要显示上例中所有以字母b 或c开头的文件名,命令行为:
#ls [b,c]*
bike bus car cat can cannon
又如列出所有以字母b或c开头,以字母s或k 结尾的文件,命令行为:
#ls [b,c]*[s,k]
bus cars
大括号是用来查找文件的一个常用方法,例如以长格式列出cars、cans和cats文件的信息,可以使用命令:
#ls -l c{ar,an,at}s