|
|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
本帖最后由 中英文泡椒 于 2026-8-19 16:04 编辑
不知道大家在新建文件或者给文件重命名的时候,有没有遇到过这样的问题?
这时候大家可能会想:计算机干什么吃的?怎么连这几个平平无奇的符号都容不下?为什么偏偏是 \ / : * ? " < > | 这 9 个?
计算机并不“聪明”!
我们先要明白一个前提:计算机很笨,它没有人类那样的理解能力。
例如:“2026/05/25 报告.docx”里的斜杠/,人类知道是代表日期。但对计算机来说,它看到这样一串字符时,必须用一套严格的规矩
去“翻译”。
为了让计算机不搞混,有些字符就被有了“特权”,成为了控制命令。因此,你就不被允许在文件名里再用它们。
为什么偏偏是这 9 个符号?
我们可以把这 9 个特权符号分为四大类,分别说说他们都为什么成为特权阶级。
指引路径的 \ 和 /
这两个斜杠,在计算机里技术上叫路径分隔符,在编程的时候我们经常会用到。给你一个文件“2026/05/25 报告.docx”,
计算机默认是在 2026 文件夹下寻找 05 文件夹,然后再找到 .docx 这个文件。
再例如、D:\照片\猫.png,这里的反斜杠(或者斜杠)就像是路标,告诉计算机:“进了D盘,再进照片文件夹,最后找到猫”。
磁盘的钥匙 :、
英文冒号:在 Windows 系统里,是专门用来标记盘符的。比如、C:代表C盘,D:代表D盘。
因此,如果你的文件名叫 我的:秘密.txt,计算机一读到冒号,就会以为你想去一个叫“我的”的磁盘,结果自然是找不到,因
为 Windows 压根不允许你用中文磁盘名,你看到的什么 D 盘是软件盘,只是取得别名罢了。
通配符 * 和 ?
在python正则表达式中,这俩在正则表达式里扮演着重要作用:
* 用于匹配任意一串字符;
? 用于匹配任意一个字符。
举个例子,用过 Linux 的同学知道,当删除目录下的所有 .jpg 文件时,可以用指令:
这里 * 就用于匹配所有 JPG 的文件名。因此,如果你把某个文件命名成了 *.doc,哪天你在搜索框一搜,就会把所有文件
列出来,让你无所适从。
早期系统的数据传输 <,> 和 |
这 3 个符号在早期 DOS 系统或命令行中(Win + R,输入 cmd 打开那个),是用于进行数据传输的:
< 和 > 叫重定向符号,用来把数据传输到目标位置;
| 叫管道符号,用来把前一个命令的结果传给下一个命令。
其实熟悉 Linux 的对这些符号都不陌生。因为它们代表动作,如果文件名里带了它们,系统在执行命令时就会误以为要传
输数据,从而引发安全问题。
为什么不与时俱进呢?
|
|