Chris F.A. Johnson wrote: > On Thu, 10 Dec 2009, Marc Herbert wrote: > >> Does anyone know a more elegant way to check for file existence? >> Something that does not fork a subshell. And is also more readable >> maybe. And is obviously not much longer. >> >> empty_dir() >> { >> test "x$(echo $1/*$2)" = "x$1"'/*'"$2" >> } >> >> >> Warning: I find neither "noglob" nor "ls" elegant, sorry! > > is_file() > { > for f > do > [ -f "$f" ] && return > done > return 1 > } > > is_file /path/to/dir/* || echo empty
This fails if the directory contains a file called "*".