John Moore wrote:
>     I'm not sure if this is an issue or not, but the bash test with the -z
> switch appears to be broken. This code came from the Unix Hacks book I
> believe and it used to work:

Look closely and see if there is a missing '$' sign in the example.

>         ffind (){
>         FILELIST="/root/filelist.txt"
>         PATTERN="$1"
>         if [ -z "PATTERN" ]; then

The -z tests if the string is non-zero in length.  "PATTERN" is a
static string and will always be non-zero in length.  Therefore the
test for -z "PATTERN" will always be true.  You almost certainly
wanted "$PATTERN" there so as to get the "$1" value assigned to it in
the previous line.

Bob


Reply via email to