3 回答
TA贡献1880条经验 获得超4个赞
被禁 可打印ASCII字符是: Linux/Unix: / (forward slash)
窗户: < (less than) > (greater than) : (colon - sometimes works, but is actually NTFS Alternate Data Streams) " (double quote) / (forward slash) \ (backslash) | (vertical bar or pipe) ? (question mark) * (asterisk)
不可打印字符
如果您的数据来自允许不可打印字符的源,那么还需要检查更多。 注:
虽然在Linux/Unix文件系统中创建文件具有文件名中的控制字符是合法的, 对用户来说,处理这些文件可能是一场噩梦。 .Linux/Unix: 0 (NULL byte)
窗户: 0-31 (ASCII control characters)
保留文件名
保留下列文件名: 窗户: CON, PRN, AUX, NUL COM1, COM2, COM3, COM4, COM5, COM6, COM7, COM8, COM9 LPT1, LPT2, LPT3, LPT4, LPT5, LPT6, LPT7, LPT8, LPT9
(它们本身具有任意的文件扩展名,例如, LPT1.txt
).其他规则
窗户: 文件名不能以空格或点结尾。
TA贡献1852条经验 获得超7个赞
'\0'
'/'
/
, '\0'
.
1
当SteveBourne编写unix shell(后来被称为Bourne shell)时,他创建了一个由254个文件组成的目录,文件名只有一个字符,每个字节值只有一个。 '\0'
和斜杠,这两个字符不能出现在Unix文件名中。他使用该目录进行各种模式匹配和标记化测试。(测试目录当然是由程序创建的。)多年以来,该目录是文件树遍历程序的祸害;它对它们进行了破坏。
.
..
- 3 回答
- 0 关注
- 2500 浏览
添加回答
举报