包含括号的文件名错误


10

当我试图从更改文件名old.file(1).gznew.file.gz,它说语法错误,我使用Ubuntu 12.04。

mv old.file(1).gz new.file.gz
bash: syntax error near unexpected token `('

8
尝试mv 'old.file(1).gz' new.file.gz

那是什么ubuntu?我从未听说过Ubuntu 12.0
mojo706

Answers:


21

Yeti的评论对您有用,但如果您想知道为什么,那是因为括号被解释为特殊字符,必须用\或将整个文件名都转义(如上)[编辑:抱歉,仅(和)。

如果启用了制表符补全功能,只需键入文件名的前几个字符并单击制表符即可。即,键入mv old并单击选项卡应该变成mv old.file\(1\).gz(除非还有其他old*可能引用的文件)。


8
整个文件名不需要引用。只做()mv old.fil'e(1).'gz new.file.gz如果愿意,您可以做。
斯特凡Chazelas

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.