Linux 笔记:文件名

文件名

Linux 系统区分英文字符的大小写。比如,myfile, Myfile 和 myFILE表示的是三个不同的文件。同样,用户密码和登录名也需要区分大小写(这里沿用了Unix 和 C 语言的命名规则)。命名目录和命名文件的规则是相同的。除非有特别的原因,否则用户创建的文件和目录名要使用小写字符。大多数的Linux 命令也使用小写字符。Linux 系统下的文件名长度最多可到256个字符。通常情况下,文件名的字符包括:字母、数字、"."(点)、"_"(下划线)和"-"(连字符)。Linux 允许在文件名中使用除上述符号之外的其它符号,但并不建议用户这样做。 有些转意字符 (即该字符被系统借用,表示某种特殊含义)

在Linux的命令解释器(shell)中有特殊的含义(shell 类似于 DOS下的命令处理器 COMMAND.COM)。这样的转意字符:"?"(问号),"*"(星号), " "(空格), "$"(货币符), "&", 扩号等等。在文件名中应尽量避免使用这些字符。文件名中可以有" "(空格),但建议用户用"_"(下划线)来替代。"/" 既可代表目录树的根也可作为路径名中的分隔符(类似DOS下的"\),因此"/"不能出现在文件名中。和DOS 一样,"." 和 ".." 分别用来表示"当前目录"和"父目录", 因此它们也不能作为文件名。

正如DOS 中一样,我们不能将文件命名为 . 或者 .. (点或者双点)——它们分别代表当前目录和当前目录的父目录(上一级目录)。这跟DOS 中是完全一致的。

下面列出了一些转意字符及其意义:

  • * = 用于匹配任意长度大于等于零的字符序列。以 . (点)开头的文件名除外。
  • ``? = 用于匹配任意单个字符
  • [abC1] = 用于匹配枚举集合中任意单个字符。比例中, 集合由‘a',‘b',C',‘1'组成。
  • [a-z] = 用于匹配任意小字字母
  • [A-F] = 用于匹配任意大写字母
  • [0-9] = 用于匹配任意个位数字
  • [a-zA-Z0-9] = 用于匹配任意字母(大小写)或者数字。
  • \ (反斜线)也是一个特殊的字符。它屏蔽后继特殊字母的特殊含义(转意),使该字符仅取其符号所代表的字面意义。

猜你喜欢

转载自www.cnblogs.com/wbyixx/p/12185446.html