我想知道名称以点开头的文件,例如
.bashrc
或者.cshrc
有鲜明的特点? (我们可以说.bashrc
延长吗?)
也许这些类型的文件是某个类别的成员?
为什么这些文件以这种方式命名?
答案1
一般来说,在 Linux 和 Unix 中,文件没有扩展名。整个“文本”是一个文件名。
如果文件名以点“.”开头,则表示该文件是隐藏的。即,除非特别要求,否则在列出目录内容时不会显示它。
答案2
历史记录:
这一切都是因为一个错误而发生的。
它是 的早期实现,开发人员决定默认情况下ls
不显示目录。他们认为一个简单的方法(可能有内存限制)是检查第一个字符,如果不是点则仅显示。其他用户注意到了这个错误,并用它来隐藏文件。从这一刻起,它就成为了一个特色。.
..
为什么要隐藏它们?
因为配置文件很多,而且大多数时候你不想被它们打扰。
这就是rc
全部内容。
这是一个文件扩展名(只是一些额外的字符),它表示它是一个配置文件。
Unix 也有文件扩展名。
是的:您可以向文件名添加额外的字符。有些程序将使用这些额外的字符来知道如何处理文件,例如文件管理器使用它来知道要启动哪个应用程序。
否:它只是文件名的一部分。 (在 DOS 和 CP/M 中,文件名可能被编码为filenametxt
,但显示为filename.txt
。那些日子早已一去不复返了,但在 MS-Windows 中却像僵尸一样存在)。
答案3
另一个答案是准确的,但您问的部分内容是“为什么这些文件以这种方式命名?”
在使用 Linux 操作系统的环境中,答案是命名约定。
操作系统或 shell 不知道它,但用户知道它。 RC 是资源控制的简写,.conf 常见于配置文件,.sh 常见于 shell 脚本,.pl 常见于 perl,.py 常见于 python 等。
只有当您使用诸如 apache 之类的应用程序时,扩展名才变得重要。文件扩展名由 Web 服务器映射到 Mime/应用程序类型。因此,.php 允许 PHP 模块对文件进行预处理,然后再将其传回 apache 以作为结果 HTML 文档发送。但是在使用 php 的命令行上,从技术上讲,您可以使用 php 运行以 .py 或 .sh 甚至 .txt 结尾的脚本