rm does not remove; ls tem* does not find temp; echo ~foo

Corinna Vinschen corinna@vinschen.de
Sat Jun 3 02:51:00 GMT 2000

"Tolkin, Steve" wrote:
> 3.  Why doesn't ls tem* find the directory named temp ?

Your TEMP directory has uppercase characters in it's name.
The pattern matching is case sensitive by default.
If you call `ls temp', no pattern matching takes place,
so the directory is found because the Windows file systems
aren't case sensitive but only case preserving.

> 580/temp> rm *.tmp
> -- No error message but the files are still there !

The files you are trying to rm are currently in use by
another app. Cygwin has saved your rm request and will
try to remove the files as soon as they are not
exclusively locked by the other app.

> -- I start to suspect the leading tilde
> 588/temp> echo ~
> /usr/home
> 589/temp> echo ~a
> -- A blank line is emitted.  Why?

Because there's no user `a'. The behaviour of the tilde
is intentionally. ~ = $HOME of the current user, ~foo =
$HOME of user foo. You may use it as a convenient abbreviation
in paths. If you don't want that, use quotes.


Corinna Vinschen
Cygwin Developer
Cygnus Solutions, a Red Hat company

Want to unsubscribe from this list?
Send a message to cygwin-unsubscribe@sourceware.cygnus.com

More information about the Cygwin mailing list