我知道这可能与转义字符有关,并且可能已经有人问过类似的问题,但这是一个我无法弄清楚的棘手组合。
在我的 Plex 媒体服务器上,我为每个专辑创建了一个目录。其中一张专辑的 mkdir 命令对我不起作用:
mkdir 'Oasis (2) - (What's The Story) Morning Glory?'
我收到一个错误:
bash: syntax error near unexpected token `)'
我尝试了不同的转义字符组合并删除了其中一些以找出有问题的字符,但我仍然无法弄清楚如何正确创建具有此确切名称的目录。
答案1
使用"
而不是'
。
$ mkdir "Oasis (2) - (What's The Story) Morning Glory"
$
$ rm Oasis\ \(2\)\ -\ \(What\'s\ The\ Story\)\ Morning\ Glory/ -rf
$
您的文本中有一个'
,因此与'
它周围的不匹配。您还可以使用:
$ mkdir Oasis\ \(2\)\ -\ \(What\'s\ The\ Story\)\ Morning\ Glory/
\
通过在每个前面添加一个 {space} ( )' 来退出这个特定的目录。
当涉及到文件名时,请尽量避免使用不同平台上未使用的字符。Windows 的规则与 Linux 等不同。
- Windows 文件名:除 ASCII 的控制字符和
\/:*?"<>|
- Linux,OS-X:除 null 或
/
系统可能会对此发出警告,但有些系统也会删除无效字符或用代码替换它,当您复制文件回来时突然出现 2 个版本。