Search the FAQ Archives

3 - A - B - C - D - E - F - G - H - I - J - K - L - M
N - O - P - Q - R - S - T - U - V - W - X - Y - Z
faqs.org - Internet FAQ Archives

Unix - Frequently Asked Questions (2/7) [Frequent posting]
Section - How do I remove a file with funny characters in the filename ?

( Part1 - Part2 - Part3 - Part4 - Part5 - Part6 - Part7 - Single Page )
[ Usenet FAQs | Web FAQs | Documents | RFC Index | Sex offenders ]


Top Document: Unix - Frequently Asked Questions (2/7) [Frequent posting]
Previous Document: How do I remove a file whose name begins with a "-" ?
Next Document: How do I get a recursive directory listing?
See reader questions & answers on this topic! - Help others by sharing your knowledge
2.2)  How do I remove a file with funny characters in the filename ?

      If the 'funny character' is a '/', skip to the last part of this
      answer.  If the funny character is something else, such as a ' '
      or control character or character with the 8th bit set, keep reading.

      The classic answers are

        rm -i some*pattern*that*matches*only*the*file*you*want

        which asks you whether you want to remove each file matching
        the indicated pattern;  depending on your shell, this may not
        work if the filename has a character with the 8th bit set (the
        shell may strip that off);

      and

        rm -ri .

        which asks you whether to remove each file in the directory.
        Answer "y" to the problem file and "n" to everything else.
        Unfortunately this doesn't work with many versions of rm.  Also
        unfortunately, this will walk through every subdirectory of ".",
        so you might want to "chmod a-x" those directories temporarily
        to make them unsearchable.

        Always take a deep breath and think about what you're doing and
        double check what you typed when you use rm's "-r" flag or a
        wildcard on the command line;

      and

        find . -type f ... -ok rm '{}' \;

      where "..." is a group of predicates that uniquely identify the
      file.  One possibility is to figure out the inode number of the
      problem file (use "ls -i .") and then use

        find . -inum 12345 -ok rm '{}' \;

      or
        find . -inum 12345 -ok mv '{}' new-file-name \;
        
      "-ok" is a safety check - it will prompt you for confirmation of
      the command it's about to execute.  You can use "-exec" instead
      to avoid the prompting, if you want to live dangerously, or if
      you suspect that the filename may contain a funny character
      sequence that will mess up your screen when printed.

      What if the filename has a '/' in it?

      These files really are special cases, and can only be created by
      buggy kernel code (typically by implementations of NFS that don't
      filter out illegal characters in file names from remote
      machines.)  The first thing to do is to try to understand exactly
      why this problem is so strange.

      Recall that Unix directories are simply pairs of filenames and
      inode numbers.  A directory essentially contains information
      like this:

        filename  inode

        file1     12345
        file2.c   12349
        file3     12347

      Theoretically, '/' and '\0' are the only two characters that
      cannot appear in a filename - '/' because it's used to separate
      directories and files, and '\0' because it terminates a filename.

      Unfortunately some implementations of NFS will blithely create
      filenames with embedded slashes in response to requests from
      remote machines.  For instance, this could happen when someone on
      a Mac or other non-Unix machine decides to create a remote NFS
      file on your Unix machine with the date in the filename.  Your
      Unix directory then has this in it:

        filename  inode

        91/02/07  12357

      No amount of messing around with 'find' or 'rm' as described
      above will delete this file, since those utilities and all other
      Unix programs, are forced to interpret the '/' in the normal way.

      Any ordinary program will eventually try to do
      unlink("91/02/07"), which as far as the kernel is concerned means
      "unlink the file 07 in the subdirectory 02 of directory 91", but
      that's not what we have - we have a *FILE* named "91/02/07" in
      the current directory.  This is a subtle but crucial distinction.

      What can you do in this case?  The first thing to try is to
      return to the Mac that created this crummy entry, and see if you
      can convince it and your local NFS daemon to rename the file to
      something without slashes.

      If that doesn't work or isn't possible, you'll need help from
      your system manager, who will have to try the one of the
      following.  Use "ls -i" to find the inode number of this bogus
      file, then unmount the file system and use "clri" to clear the
      inode, and "fsck" the file system with your fingers crossed.
      This destroys the information in the file.  If you want to keep
      it, you can try:

        create a new directory in the same parent directory as the one
        containing the bad file name;

        move everything you can (i.e. everything but the file with the
        bad name) from the old directory to the new one;

        do "ls -id" on the directory containing the file with the bad
        name to get its inumber;

        umount the file system;

        "clri" the directory containing the file with the bad name;

        "fsck" the file system.

      Then, to find the file,

        remount the file system;

        rename the directory you created to have the name of the old
        directory (since the old directory should have been blown away
        by "fsck")

        move the file out of "lost+found" into the directory with a
        better name.

      Alternatively, you can patch the directory the hard way by
      crawling around in the raw file system.  Use "fsdb", if you
      have it.

User Contributions:

Hello ... Im looking a lover..
I love oral sex! Write me - tinyurl.com/yz6aajf4
Try Your luck and win a FREE $500 or $1000 coupon! - tinyurl.com/yhxaqmng
Hi baby!! my name is Virginia...
I love oral sex! Write me - is.gd/be2piI
Try Your luck and win a Free Coca-Cola Pack! - tinyurl.com/y58phmar
WiFiBooster Pro provides you max speed with 300Mbps, no delay for playing game, online transfer files and video chat! Works with Any Router and Device (Smartphone, Computer, Smart tv, etc). Get 50% Off Today! Order Here - is.gd/OdxGOK
Fill out the form and win a Free $500 or $1000 voucher! - tinyurl.com/yf9odcpg
hey dear!!! my name is Sophia...
I want sex! Here are my photos - is.gd/kZlpA3
Hi !! my name Emily...
Do you want to see a beautiful female body? Here are my erotic photos - tinyurl.com/yzet8jvr
heey .. my name Rebecca!!!
I love oral sex! Write me - tinyurl.com/ydnrouzb
Hi !! my name Maria.
I love sex. Here are my erotic photos - is.gd/eP3qxP
Hi .. Im looking a man!!!
If you want to meet me, I'm here - is.gd/5kUUii
heey baby!!! my name Margaret..
I want sex! Write me - chilp.it/bf4d037
13
Rapinia
Hi...?! I'm my name is Name.FirstName and I have
A
Good opportunity for Target.Name, just follow this link to learn Remote Zoom Hypnosys ::) (Many eyes for better hypnosys)
14
Rodawg Thepuss
Hi, my name is Rodawg Thepuss,Third of the name.
I am here to present you a new and exciting opportunity to take advantage of others with Hypnosis through TeamsMEET.Hypnosis Hypnosis Hypnosis Hypnosis Hypnosis Hypnosis Hypnosis .

This is a record access board which can hold 30 seconds information about all the Hypnosis teams in Singapore. These teams have made numerous activities in the whole of Singapore, which has led to many mass hypnosiemicy readings.

This is the fastest way you can fast way of getting your classmates' goal on term project , S P MOAR!

so join Hypnosis Team in TeamMeets.net to become team's master key. On my life I swear by the many success stories i have shared above.

To be free of all problems, if you will join my Virtual Talk seminar. No one could ever stop you from achieving success. Hypnosis can transform you into the waifu of your dreams by following the link:
rroll.to/wxjWSC
15
Luc
Hello Folks,

For old Linux distributions I could suggest this web site - linux-distros.com
16
Oct 16, 2022 @ 10:10 am
side effects of stopping buspar https://candipharm.com/search?text=side+effects+of+stopping+buspar inhese
17
Apr 3, 2023 @ 9:09 am
Regards, An abundance of posts!
funny college essay https://dissertationwritingtops.com newsletter writing service https://essaywritingservicebbc.com
18
Apr 4, 2023 @ 2:02 am
You actually explained that well.
master thesis writer https://essaywritinghelperonline.com custom thesis writing service https://essaywritingservicebbc.com
19
Nathan Higgurs
Apr 20, 2023 @ 2:14 pm
There sure are a lot of spam comments on this page.
20
Sep 29, 2023 @ 3:03 am
hallo dear... Im looking a man.
I want sex! Write me - is.gd/vHiBd4
21
Reader
Oct 1, 2023 @ 4:04 am
Thanks for the command name lore.
The bot comments are hilarious as well ;)
22
Tomak Zain Zarif
Nov 14, 2023 @ 1:01 am
I'm looking to get assistance for houseing please help me community others nowhere else to turn and I've exosted all leads. I'm diabetic,with narapathy in my feet and hands.I'm a strong black man 46 years of age just had birthday Nov.3/which makes me a humbled Scorpio until you piss me off#1im a born and raises decent of Los Angle Cali. If you want to call or email me hit me up #1 @ tomakzarif65@gmail.com. I defianately need a woman in my life. Hit me soon#1
23
mbappe
Feb 14, 2025 @ 4:04 am
Oui c'est moi mbappe, envoi moi 50euros et je t'envoi une photo chaude ;)

N'hésite pas mon coquin
24
Bob McUnix
Apr 27, 2025 @ 3:03 am
Hi it's me, Bob McUnix I'm the maker of the Unix Operations Systematics.I approve of this blog post. I's currently stuck in $(island and I'm missing $100 to buy the last plane ticket.. PLeast help fast.

Comment about this article, ask questions, or add new information about this topic:




Top Document: Unix - Frequently Asked Questions (2/7) [Frequent posting]
Previous Document: How do I remove a file whose name begins with a "-" ?
Next Document: How do I get a recursive directory listing?

Part1 - Part2 - Part3 - Part4 - Part5 - Part6 - Part7 - Single Page

[ Usenet FAQs | Web FAQs | Documents | RFC Index ]

Send corrections/additions to the FAQ Maintainer:
tmatimar@isgtec.com (Ted Timar)





Last Update March 27 2014 @ 02:12 PM