Deleting files with rm and getting
rm: invalid option –Try ‘rm –help’ for more information.
In Linux, trying to delete a file its name starts with dash(‘-‘) or double dashes(‘–‘) will fails, as dash or ‘-‘ is interpreted as an option by the rm and most linux commands.
Here are two files with filenames starting with ‘-‘ and ‘–‘ and the typical rm command deletion attempt fails with an error –
$ ls -1
-tempfile1
--tempfile2
$ rm -tempfile1
rm: invalid option -- 't'
Try 'rm ./-tempfile1' to remove the file '-tempfile1'.
Try 'rm --help' for more information.
$ rm --tempfile2
rm: unrecognized option '--tempfile2'
Try 'rm ./--tempfile2' to remove the file '--tempfile2'.
Try 'rm --help' for more information.
There are several ways of addressing this – you can precede the file name with ./ OR pass double dash after rm to end all option processing.
$ ls
-tempfile1 --tempfile2
$ rm -- -tempfile1
$ mv -- --tempfile2 tempfile2
$ rm ./-tempfile1
References –