About Linux FAQ

Browse More FAQs:

UNIX: Remove a file with a name starting with - character

Posted by Vivek Gite [Last updated: November 29, 2007]

Q. Accidentally, I had created a file called -foo. Now how do I remove a file with a name starting with '-' under UNIX or Linux operating system?

A. Use standard UNIX rm command, as follows:

rm command

Use rm command to remove files or directories as follows
rm ./-foo
rm ./-filename
rm -- -foo

Alternatively, you can also use UNIX / Linux inode number to delete a file with strange names.

Subscribe to our free e-mail newsletter or RSS feed to get all updates. You can Email this page to a friend.

Related Other Helpful FAQs:

Discussion on This FAQ

  1. Rich Says:

    The following will work as well.

    rm — \-foo

    Any unix utility that uses getopt will see the — as an end of options.

  2. Royce Says:

    [self-promotion warning, but I do think that it's topical ...]

    I wrote an article for Sys Admin a while back about deleting files with unusual characters in their filenames on many Unix-likes.

    Litter Delenda Est: part one

    Litter Delenda Est: part two

  3. Jadu Says:

    $ rm — -file

    this will also work.

Leave a Reply

We encourage your comments, and suggestions. But please stay on topic, be polite, and avoid spam. Thank you very much for stopping by our site!

XHTML: You can use these tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

*
To prove you're a person (not a spam script), type the security word shown in the picture. Click on the picture to hear an audio file of the word.
Click to hear an audio file of the anti-spam word

Tags: , , , , ,

Copyright © 2006-2008 nixCraft. All rights reserved - TOS/Disclaimer - Privacy policy - Sitemap - Powered by Open source software.