如何在文件名的开头使用连字符解压缩文件

用户名

我的名字开头有一个带连字符的Zip文件,比方说 '- stuff.zip'

如果我需要移动或复制文件,这意味着我需要使用双连字符,这样文件名才不会被解释为选项:

cp -- '- stuff.zip' '- stuff2.zip'

但是,如果我尝试对此文件使用unzip,那将不起作用:

unzip -l -- '- stuff.zip'

error:  -fn or any combination of -c, -l, -p, -t, -u and -v options invalid

我已经尝试过将单引号和双引号,反斜杠,变量中的文件名的所有组合想到的,但我无法使其正常工作。我无法重命名文件,因为脚本将在只读文件系统上运行。

起作用的一件事是使用find:

find -maxdepth 1 -name '- stuff.zip' -exec unzip -l {} \;

但这很不方便。

贾科莫1968

尝试在前面加上的这个方法- stuff.zip./

unzip -l './- stuff.zip'

或使用不需要引号的方法(单引号或双引号),但在连字符后转义空格:

unzip -l ./-\ stuff.zip

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章