I am trying to get a list of /mnt/dosc excluding "Program Files" and "quickenw" from within this script. This is a stripped down version of what would normally include variables, but it illustrates the concept.
Here is the script: #!/bin/sh paths_to_exclude="/mnt/dosc/Program?Files /mnt/dosc/quickenw" call="find /mnt/dosc/" for i in $paths_to_exclude ; do call="$call -path '"$i"' -prune -o" done call="$call -print" echo "Calling..." echo $call $call [end script] Running this script generates the following: Calling... find /mnt/dosc/ -path '/mnt/dosc/Program Files' -prune -o -path '/mnt/dosc/quickenw' -prune -o -print find: paths must precede expression Usage: find [path...] [expression] However, running the command find /mnt/dosc/ -path '/mnt/dosc/Program Files' -prune -o -path '/mnt/dosc/quickenw' -prune -o -print Generates the desired output. I assume part of the problem is the "?", but I have to keep the string together or the for loop breaks it up. Is there any other way to get this thing to go thru the for loop intact? Also, why does running the same command as $call work from the command prompt? Any help would be appreciated. Kirk _______________________________________________ Redhat-list mailing list [EMAIL PROTECTED] https://listman.redhat.com/mailman/listinfo/redhat-list