2015-12-11 49 views
0

我创建了一个名为“--address=16.187.249.27”意外的文件,并尝试以下方法来删除它,但没有成功:如何删除名称以“ - ”开头的文件?

$ rm "--address=16.187.249.27" 
rm: unrecognized option '--address=16.187.249.27' 
Try 'rm ./'--address=16.187.249.27'' to remove the file ‘--address=16.187.249.27’. 
Try 'rm --help' for more information. 

$ rm "\--address=16.187.249.27" 
rm: cannot remove ‘\\--address=16.187.249.27’: No such file or directory 

如何删除文件名称以“ - ”?

+0

'RM - yourfilename' –

+0

'rm'也足够有用,足以说明如何删除yor文件。 –

回答

2

--的单个实例添加到您的命令行意味着所有后来的内容都是文件名而不是标志参数。因此,这应该这样做:从该名男子页

rm -- --address=16.187.249.27 
2

注意 rm命令使用getopt的(3)解析它的参数,这使得它能够接受--选项,这将导致它在该点停止 处理标记选项。这将允许删除以破折号(' - ')开头的 文件名。

For example: 
     rm -- -filename 

通过使用绝对或相对路径引用可以获得相同的行为。

For example: 
     rm /home/user/-filename 
     rm ./-filename 

这样你就可以通过运行

rm -- --address=16.187.249.27 
1

删除可以有多种选择不删除这些文件:

rm ./--address\=16.187.249.27 
rm "./--address=16.187.249.27" 
rm './--address=16.187.249.27' 
rm -- --address=16.187.249.27 
find -maxdepth 1 -name "--address=16.187.249.27" -delete 
+0

最后一个将递归到子目录中,并删除每个您可能想保留的名称的文件:-) –

+0

@EmilVikström修复,谢谢 – chaos

相关问题