"ls" finds file1 but "ls file1" does not
Eric Blake
ericblake@comcast.net
Mon May 9 22:46:00 GMT 2005
> Response to Eric Blake:
> Thanks. I forgot that unix had separate permissions for directories.
> However, I have
> now given myself all the permissions I know of and I still have the same
> problem.
>
> EXAMPLE:
>
> $ ls ass*
> ls: ass*: No such file or directory <------BUT IT IS THERE
>
> $ ls -l
> total 722
> -rwxrwxrwx+ 1 cdr None 58614 Oct 12 1995 _index.htm*
> -rwxrwxrwx+ 1 cdr None 2177 Oct 12 1995 assert.htm*
Next thing to check - do you have shell globbing disabled or filtered? (For more info on these options, read `man bash'.)
$ echo ignoring:$GLOBIGNORE options:$-
$ shopt | grep glob
If GLOBIGNORE includes *.htm or the builtin set includes -f, bash will not expand *, but instead looks for the literal file named "ass*", which does not exist. I'm also guessing that nullglob is off, otherwise bash would expand the failed * into no arguments at all, which would cause a full directory listing, rather than passing the literal string with * on to ls.
--
Eric Blake
--
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
Problem reports: http://cygwin.com/problems.html
Documentation: http://cygwin.com/docs.html
FAQ: http://cygwin.com/faq/
More information about the Cygwin
mailing list