win_os_linux不能用于文件名的保留字符

windows

在 Windows 文件系统中,以下字符是保留字符,不能用于文件名或目录名:

  1. < (小于号)
  2. > (大于号)
  3. : (冒号)
  4. " (双引号)
  5. / (斜杠)
  6. \ (反斜杠)
  7. | (竖线)
  8. ? (问号)
  9. * (星号)

此外,文件名不能以空格或句点 (.) 结尾,虽然句点可以出现在文件名的中间。文件名也不能使用下列保留的文件名,无论是否包含文件扩展名:

  • CON
  • PRN
  • AUX
  • NUL
  • COM1COM9
  • LPT1LPT9

这些保留的文件名及字符是由 MS-DOS 早期的设计决定的,并一直保留到现代的 Windows 文件系统中。确保在创建文件名时避开这些保留字符和名字,可以避免潜在的问题。

macos ios

在 macOS 和 iOS 文件系统中,以下字符是保留字符,不能用于文件名或目录名:

  1. : (冒号):在 macOS 和 iOS 中,冒号是保留的文件名字符,因为它被用作路径分隔符(类似于 Windows 中的斜杠 /)。

此外,虽然 macOS 和 iOS 的文件系统(如 APFS 和 HFS+)相对宽松,并允许大多数 Unicode 字符作为文件名,但最好避免使用以下字符,因为它们在命令行和脚本中可能具有特殊含义,或者在不同的系统中可能会引起兼容性问题:

  1. / (斜杠):虽然在 macOS 文件系统中实际可以使用(在 POSIX 路径中用作目录分隔符),但在 Finder 和其他用户界面中不能使用。
  2. \ (反斜杠):在许多编程语言和脚本中是转义字符。
  3. * (星号)
  4. ? (问号)
  5. " (双引号)
  6. < (小于号)
  7. > (大于号)
  8. | (竖线)

虽然技术上这些字符中的一些可能在文件名中可用,但在实践中避免使用这些字符可以避免跨平台兼容性问题和意外的脚本错误。

总的来说,最安全的文件命名策略是在所有平台上避免使用这些特殊字符::, /, \, *, ?, ", <, >, 和 |。这样可以确保最大程度的兼容性和减少潜在的问题。

linux

在 Linux 文件系统中,大多数字符都可以用于文件名,但有以下两个字符是绝对不能用于文件名的:

  1. / (斜杠):斜杠用于目录分隔符,因此不能在文件名中使用。
  2. \0 (空字符):空字符表示字符串结束符,也不能在文件名中使用。

虽然大多数其他字符在文件名中是允许的,但有些字符在命令行和脚本中具有特殊意义,最好避免使用,以免引起不必要的问题。这些字符包括:

  1. \ (反斜杠):在许多编程语言和脚本中是转义字符。
  2. * (星号):在命令行中用于通配符匹配。
  3. ? (问号):在命令行中用于匹配单个字符。
  4. " (双引号):用于引用字符串。
  5. ' (单引号):用于引用字符串。
  6. | (竖线):用于管道命令。
  7. & (和号):用于后台执行命令。
  8. ; (分号):用于分隔命令。
  9. > (大于号):用于重定向输出。
  10. < (小于号):用于重定向输入。
  11. () (小括号):用于子 shell 和命令组。
  12. {} (大括号):用于命令组。
  13. [] (方括号):用于字符类匹配和数组索引。
  14. ! (惊叹号):用于命令历史记录。

尽管这些字符在技术上可以包含在文件名中,但它们在命令行和脚本中有特殊意义,因此使用它们时需要小心。为了避免潜在的问题,最好在文件名中避免使用这些特殊字符。

在使用命令行的时候,比如cp,需要转义,比如:

php需要如下写:

相关推荐
FREEDOM_X1 小时前
嵌入式Linux摄像头采集与图像处理
linux·图像处理·ubuntu
studytosky1 小时前
OpenClaw 入门与 Skill 开发
linux·服务器·ai编程
kaoa0001 小时前
Linux入门攻坚——82、kvm虚拟化-2
linux·运维·服务器
OsDepK1 小时前
Windows快速部署Docker
运维·docker·容器
2601_954706491 小时前
云虚拟化终端架构解析:ARM 云端集群部署与自动化运维实践
运维·arm开发·架构
zandy10111 小时前
地址解析厂商推荐:分行业地址服务能力选型与技术分析
大数据·运维·人工智能
财迅通Ai1 小时前
“光纤传感+AI”双轮驱动加速成长,光格科技步入资产数字化运维快车道
运维·人工智能·科技·光格科技
laowangpython2 小时前
昆仑通态 Mcgs Pro软件安装步骤(附安装包)Mcgs Pro 3.3.6 下载安装教程(保姆级)
java·服务器·数据库·其他
学无止境_永不停歇2 小时前
3. 进程状态
linux·服务器
Splashtop高性能远程控制软件3 小时前
本地部署 vs 公有云 vs 混合架构:一份可对照落地的 IT 架构选型指南
运维·架构·远程控制·splashtop