当前位置:  首页  >  服务器技术  >  Linux/unix  >  Linux教程

Unix文件名与Windows文件名的差异

文章标题:Unix文件名与Windows文件名的差异。Linux是中国IT实验室的一个技术频道。包含桌面应用,Linux系统管理,内核研究,嵌入式系统和开源等一些基本分类

    Unix操作系统中文件的命名规则并没有像Windows操作系统那么严格。或者说,很多Windows操作系统中文件名字里不能够包含的字符,在Unix操作系统中都是可以的。所以有些从Windows操作系统上转移过来的管理员会觉得特别的不习惯。笔者今天就对两个操作系统的命名规则上的差异做一下总结,帮助Windows系统管理员更加顺利的转型到Unix操作系统的阵地上来。

  一、 隐藏文件的表示方法不同。

  在Windows操作系统中,如果要将某个文件的属性设置为隐藏,那么必须要点击这个文件,然后右键选择“隐藏”。然后才能够将这个文件设置为隐藏。即在一般的情况下是看不到用户隐藏的文件。但是Unix操作系统下则不同。在Unix操作系统中,同Windows操作系统一样,可以将某个文件夹或者文件隐藏。但是两者的方式不同。在Unix操作系统中,是根据文件或者文件夹(目录文件)的名字来控制的。即如果要把某个文件设置为隐藏,那么只需要在某个文件名字的开头加上一个英文状态下的点号即可。如果要将某个目录文件设置为隐藏,通力也只需要在目录文件的名字前面即上一个英文状态下的点号即可。如.Unix等等。这就表示这个文件夹是一个隐藏文件或者隐藏的文件夹。

  那么该如何查看这个隐藏的文件或者隐藏的文件夹呢?这跟Windows操作系统又不同。在Unix操作系统中,如果要进入某个隐藏的文件夹,不需要像Windows操作系统那样特殊的设置。只需要把文件名或者目录文件名输全即可。也即是说,要把那个.号也带上。如要进入到上面设置的那个UNIX隐藏文件夹中,则只需要执行cd .UNIX命令即可。所以在Unix操作系统中,无论是设置隐藏文件或者隐藏目录文件,还是查看这些文件,都是由一个英文状态下的点号所控制的。为此在Unix操作系统中要充分认识到这个点号的重要性。

  二、 大小写敏感程度不同。

  在Windows操作系统中,无论是文件还是文件夹,对于大小写都是不敏感的。也就是说,Unix与UNIX是同一个文件或者文件夹。所以在Windows操作系统中,给文件夹或者目录去名字的时候,不需要考虑大小写的问题。这给操作带来很大的方便。如在定义环境变量的时候,也不需要考虑大小写的问题。把路径全部小写或者大写都没有问题。但是在Unix操作系统中则不同。在Unix操作系统中,无论是普通文件还是目录文件,对于大小写都是敏感的。即Unix与UNIX是两个不同的文件或者目录。虽然这个差异不是很大,但是影响却很深远。如在Unix中定义环境变量的时候,在输入路径时,大小写就一个都不能够错误。如果某个字符大小写输入有问题的话,那么这个环境变量就不会起作用,因为其指向了一个错误的位置。

  为此在Unix操作系统中定义文件或者文件名字的时候,就需要特别的注意。通常情况下,除非有特殊的必要,笔者都建立对于普通的文件,最好都采用小写的字符。对于系统文件或者目录,采用大小的字符。无论是哪一种文件,有一个禁忌就是不要采用大小写混合的方式来命名文件或者目录。因为一方面要输入大小写混合的目录或者文件时,会很麻烦。其次在引用路径时也容易出错。为此对于任何一种文件(普通文件、目录文件、设备文件)名字,都最好采用全部大写或者小写的形式。另外在定义环境变量的时候,最好通过复制、粘贴的方式来为环境变量指定路径,以防止因为大小写输入错误而导致环境变量不其作用。

  说到这个大小写,最好有顺便提醒一下。在定义环境变量的时候,这个变量名字的大小写也是敏感的。在Windows操作系统中环境变量的大小写不敏感,用户将环境变量的名字输入为大小或者小写都是同一个。但是在Unix操作系统中这个环境变量的大小写也是敏感的。根据习惯,Unix操作系统中的环境变量一般都定义为大写。而普通的变量设为小写。这虽然是一个不成文的规则,但是系统工程师最好还是遵守。以减少大小写敏感所带来的烦恼。

  三、 扩展名的要求不同。

  在Windows操作系统中,一般要求文件都必须有扩展名。操作系统是根据这个扩展名来关联应用程序的。如text.txt,最后,.txt就是文件的扩展名。特别是对于一些脚本批处理程序,都要求以bat扩展名结尾。只有如此,操作系统才会当作批处理程序来执行。不过在Unix操作系统中却没有这么严格的要求。即使是普通文件,扩展名也是可有可无的。如默认情况下,sh是Unix操作系统下的可执行文件。但是如果工程师编写的可执行文件不带上这个扩展名,其也可以运行。这主要是两个操作系统调用脚本程序的方法不同。在Windows操作系统的命令行窗口下,只要输入脚本程序的全名(带上扩展名),即可以运行这个脚本程序。但是在Unix操作系统的shell中,调用某个脚本程序的话,需要在这个脚本程序前面加上./等符号,表示让系统执行这个程序。也即是说,他不是以扩展名来区分这是否是一个可执行的脚本程序。而是根据命令行的前缀来判断。为此在Unix操作系统中,对于扩展名没有任何的规定。

  虽然Unix操作系统中对于扩展名没有硬性的规定。但是在通常情况下笔者仍然建议用户在建立普通文件的时候,最好还是加上扩张名。只有如此,看扩展名、而不用看文件的具体内容,就可以了解文件的类型。如一看到sh扩展名,就知道这是一个脚本文件。而不用再去看其里面的内容。类似的,对于C语言源文件、文本文件等等最好都能够加上一个扩展名,以示区别。

[1] [2] 下一页

吐了个 "CAO" !
扫码关注 PHP1 官方微信号
PHP1.CN | 中国最专业的PHP中文社区 | PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | PHP问答
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved PHP1.CN 第一PHP社区 版权所有