@
solider245 后缀的目的是人为表述规则,也就是人为规定就行,但是 linux 的文件管理不是强依赖后缀名。
用过 git 吧? .gitignore 这文件类型是啥? 前面的. 就是表示这是个隐藏文件,linux 规定以.为开头的是隐藏文件, 那么请问后缀是啥? 因为文件名本身已经是规则了,那后缀就没啥意义。
或者你看一下 Makefile,请问后缀名是啥? 又一个文件名本身就是规则的。
windows 里表述可执行的后缀是 exe 么? 那 linux 里可执行是怎么表示的? ls -l 看一下,有没有可执行权限就好。
综上,个人观点:“后缀名只是文件用来表述规则的一种方法而已, 而不是后缀名就是一切的规则。”
===========================================
以下是一些可能是错误的认知经验:
愿你能理解我的表述。另外,理解系统的设计哲学之后再对比映射就好。
比如 linux 的设计哲学之一就是“一切皆文件”, 设备也是文件( cat /dev/ttyusb0 就可以读取 usb 串口,而不是 windows 那种打开一个程序-比如串口大师什么的,然后再解析),属性也是文件("cat /proc/cpuinfo" 就是查看 cpu 属性)
诸如此类的还有流这个概念,引发出管道,也就是 UNIX 设计哲学里一切都是精简的可服用的小的模块,这个看看《 UNIX 设计哲学》还有一些相关的材料,愿你可以很快理解
windows 设计哲学比较复杂,但是有一个是“所见即所得”,一个是窗口化,所以有了常见文件类型映射固定图标,以完成这件事儿,即见到这图标,就知道这是个什么类型的文件。 (这是一种感知 /交互的 规则)
如果这个事儿,换到 ios 上,你会发现,又不一样了。。。。
操作系统是门设计艺术。 套用不同体系下的规则去相互理解,有很多时候百害而无一利。