Linux通过文件头中的代码确定文件的类型。它不取决于文件扩展名来知道要使用哪个软件来打开文件。
这就是我从教育中所记得的。如果我错了,请纠正我!
工作一点与Ubuntu系统最近我看到很多文件上有扩展喜欢这个系统.sh
,.txt
,.o
,.c
现在我在想:这些扩展名仅适用于人类吗?这样一来,您便可以知道文件的类型是什么?
还是它们对操作系统也有用途?
Linux通过文件头中的代码确定文件的类型。它不依赖于文件扩展名来知道用于打开文件的软件。
这就是我从教育中所记得的。如果我错了,请纠正我!
这些扩展仅适用于人类吗?
当您与确实依赖扩展名的其他操作系统进行交互时,使用扩展名是更明智的主意。
在Windows中,扩展程序附带了打开软件。
在Windows中,打开一个名为“ file”的文本文件比打开相同的名为“ file.txt”的文件更困难(您每次都需要将“打开文件”对话框从切换*.txt
到*.*
)。TAB和分号分隔的文本文件也是如此。导入和导出电子邮件(.mbox扩展名)也是如此。
特别是在编写软件时。与“ software.html”和“ software.js”相比,打开名为HTML的文件“ software1”和作为JavaScript文件的“ software2”变得更加困难。
如果Linux中有一个文件扩展名很重要的系统,那么我将其称为错误。如果软件依赖文件扩展名,则可以利用。我们使用解释器指令来识别文件是什么(“文件中的前两个字节可以是字符“#!”,它们构成一个幻数(十六进制的23和21,ASCII值分别为“#”和“!”)。 “)(通常称为“ shebang”)。)
文件扩展名最著名的问题是Windows上的LOVE-LETTER-FOR-YOU.TXT.vbs。这是一个可视的基本脚本,在文件资源管理器中显示为文本文件。
在Ubuntu中,当您从Nautilus启动文件时,会收到一条警告,警告您将要做什么。从Nautilus执行脚本以启动某些应打开gEdit的软件显然是一个问题,我们收到有关此警告。
在命令行中执行某些操作时,您可以直观地看到扩展名。如果它以.vbs结尾,我将开始变得可疑(不是.vbs在Linux上可执行。至少没有付出更多努力;)。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句