[comp.unix.questions] When is a file name not a file name?

MAB01004%UFRJ@cunyvm.cuny.edu (Jones Smith) (07/21/89)

Next time, try:

rm ./-l     or,
rm -i *

    Jones Smith and Wally Gator

packman%TAMUNIX.BITNET@tamvm1.tamu.edu (Packman) (07/22/89)

>Next time, try:
>
>rm ./-l     or,
>rm -i *
>
>Jones Smith and Wally Gator

The first one will work ok, but the second one will not because the
shell expands the "*" to "-l" and then rm thinks it's an option.

        See you
        Wally Strzelec
        <packman@tamunix.tamu.edu>

There is no time like the present to postpone what you ought to be doing.

friedl@vsi.COM (Stephen J. Friedl) (07/23/89)

[How do I remove a file called "-l"]

Somebody suggests:
>
>      rm ./-l     or,      rm -i *

In article <20314@adm.BRL.MIL>, packman%TAMUNIX.BITNET@tamvm1.tamu.edu (Packman) writes:
> 
> The first one will work ok, but the second one will not because the
> shell expands the "*" to "-l" and then rm thinks it's an option.

Imagine what happens if you ran "rm -i *" and the file you really
wanted to remove was "-f"?

     Steve

-- 
Stephen J. Friedl / V-Systems, Inc.  /  Santa Ana, CA  / +1 714 545 6442 
3B2-kind-of-guy   / {attmail uunet}!vsi!{bang!}friedl  /  friedl@vsi.com

"Why can't I do pointer multiplication in C?" - Blair Houghton

GU.GEYMONT%SCIENCE.UTAH.EDU@wasatch.utah.edu (Rick Geymont) (07/23/89)

The easiest way I have found to remove files with special characters in the
name is to do the following:
do an 'ls -i' and get the inode number
type 'find . -inum # -exec rm {} \;' where # is the inode number.

Works every time...