热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

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] 下一页


推荐阅读
  • 本文介绍了在Windows系统上使用C语言命令行参数启动程序并传递参数的方法,包括接收参数程序的代码和bat文件的编写方法,同时给出了程序运行的结果。 ... [详细]
  • 31.项目部署
    目录1一些概念1.1项目部署1.2WSGI1.3uWSGI1.4Nginx2安装环境与迁移项目2.1项目内容2.2项目配置2.2.1DEBUG2.2.2STAT ... [详细]
  • 本文介绍了使用Python解析C语言结构体的方法,包括定义基本类型和结构体类型的字典,并提供了一个示例代码,展示了如何解析C语言结构体。 ... [详细]
  • 本文介绍了基于c语言的mcs51单片机定时器计数器的应用教程,包括定时器的设置和计数方法,以及中断函数的使用。同时介绍了定时器应用的举例,包括定时器中断函数的编写和频率值的计算方法。主函数中设置了T0模式和T1计数的初值,并开启了T0和T1的中断,最后启动了CPU中断。 ... [详细]
  • C语言注释工具及快捷键,删除C语言注释工具的实现思路
    本文介绍了C语言中注释的两种方式以及注释的作用,提供了删除C语言注释的工具实现思路,并分享了C语言中注释的快捷键操作方法。 ... [详细]
  • c语言\n不换行,c语言printf不换行
    本文目录一览:1、C语言不换行输入2、c语言的 ... [详细]
  • 本文介绍了使用PHP实现断点续传乱序合并文件的方法和源码。由于网络原因,文件需要分割成多个部分发送,因此无法按顺序接收。文章中提供了merge2.php的源码,通过使用shuffle函数打乱文件读取顺序,实现了乱序合并文件的功能。同时,还介绍了filesize、glob、unlink、fopen等相关函数的使用。阅读本文可以了解如何使用PHP实现断点续传乱序合并文件的具体步骤。 ... [详细]
  • 本文探讨了C语言中指针的应用与价值,指针在C语言中具有灵活性和可变性,通过指针可以操作系统内存和控制外部I/O端口。文章介绍了指针变量和指针的指向变量的含义和用法,以及判断变量数据类型和指向变量或成员变量的类型的方法。还讨论了指针访问数组元素和下标法数组元素的等价关系,以及指针作为函数参数可以改变主调函数变量的值的特点。此外,文章还提到了指针在动态存储分配、链表创建和相关操作中的应用,以及类成员指针与外部变量的区分方法。通过本文的阐述,读者可以更好地理解和应用C语言中的指针。 ... [详细]
  • 字符常量与变量的定义及使用方法
    本文介绍了字符常量与变量的定义及使用方法,包括字符常量的定义、值和转义字符的表示方法;字符串常量的定义和结束标志;字符型数据与整型数据的区别;字符型变量的定义和内存占用;字符串变量的运算方法。同时提醒注意字符串常量不可赋值给字符型变量,需使用数组或指针进行存取。 ... [详细]
  • 本文介绍了Linux Shell中括号和整数扩展的使用方法,包括命令组、命令替换、初始化数组以及算术表达式和逻辑判断的相关内容。括号中的命令将会在新开的子shell中顺序执行,括号中的变量不能被脚本余下的部分使用。命令替换可以用于将命令的标准输出作为另一个命令的输入。括号中的运算符和表达式符合C语言运算规则,可以用在整数扩展中进行算术计算和逻辑判断。 ... [详细]
  • OO第一单元自白:简单多项式导函数的设计与bug分析
    本文介绍了作者在学习OO的第一次作业中所遇到的问题及其解决方案。作者通过建立Multinomial和Monomial两个类来实现多项式和单项式,并通过append方法将单项式组合为多项式,并在此过程中合并同类项。作者还介绍了单项式和多项式的求导方法,并解释了如何利用正则表达式提取各个单项式并进行求导。同时,作者还对自己在输入合法性判断上的不足进行了bug分析,指出了自己在处理指数情况时出现的问题,并总结了被hack的原因。 ... [详细]
  • 这篇文章主要介绍了Python拼接字符串的七种方式,包括使用%、format()、join()、f-string等方法。每种方法都有其特点和限制,通过本文的介绍可以帮助读者更好地理解和运用字符串拼接的技巧。 ... [详细]
  • 树莓派语音控制的配置方法和步骤
    本文介绍了在树莓派上实现语音控制的配置方法和步骤。首先感谢博主Eoman的帮助,文章参考了他的内容。树莓派的配置需要通过sudo raspi-config进行,然后使用Eoman的控制方法,即安装wiringPi库并编写控制引脚的脚本。具体的安装步骤和脚本编写方法在文章中详细介绍。 ... [详细]
  • C语言判断正整数能否被整除的程序
    本文介绍了使用C语言编写的判断正整数能否被整除的程序,包括输入一个三位正整数,判断是否能被3整除且至少包含数字3的方法。同时还介绍了使用qsort函数进行快速排序的算法。 ... [详细]
  • C语言常量与变量的深入理解及其影响
    本文深入讲解了C语言中常量与变量的概念及其深入实质,强调了对常量和变量的理解对于学习指针等后续内容的重要性。详细介绍了常量的分类和特点,以及变量的定义和分类。同时指出了常量和变量在程序中的作用及其对内存空间的影响,类似于const关键字的只读属性。此外,还提及了常量和变量在实际应用中可能出现的问题,如段错误和野指针。 ... [详细]
author-avatar
手机用户2502869023
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有