我不小心在GitBash(类似Unix的环境)中创建了一个名为- -l
的文件(我完全不知道我是如何设法做到这一点的):
Johnny (master #) scipy-tentative-numpy-tutorials $ ls -l
total 1
-rw-r--r-- 1 Johnny Administ 956 May 7 16:24 - -l
-rw-r--r-- 1 Johnny Administ 562 May 7 16:21 README.md
我希望删除(删除)- -l
个文件。
我尝试了几种但没有运气。 e.g。
rm "- -l"
rm "-\ \-l"
rm -\ \-l
这些不起作用。
请如何删除- -l
文件?
谢谢!
答案 0 :(得分:2)
试试这个:
rm ./-\ -l
或者这个:
rm -- -\ -l
第一个解决方案告诉程序您正在寻找当前目录中的文件,因此暗示该参数不是一个选项。
第二个解决方案使用--
告诉程序,以-
开头的后续参数不是选项。
答案 1 :(得分:2)
使用双连字符(--
)来停止标记解析:
rm -- -\ -l
或者,您甚至可以使用制表符完成:
rm -- \- # Then press TAB immediately after typing the final -
这假定该目录中唯一带有前导连字符的文件。 Bash足够智能,可以自动转义文件名中间的空格。