[OT] shell quoting [SOLVED]
Alexander Kirillov
nevis2us at infoline.su
Thu Sep 20 09:34:07 UTC 2007
>> I need to compare two different versions of a source tree
>> excluding certain directories and print out some statistics
>> on the files which have been changed, removed or added.
>
> diff -urN -x 'bb*' old new | diffstat
diff won't help much as I need an explicit list
of new/added files in a tree of ~10K files.
Besides -x only works on basenames.
>> and I want to exclude all paths starting with ./bb
>> This one is easy:
>>
>> find . ! -path './bb*'
>>
>> Now I want to make it into a generic script:
>>
>> DIR=.
>> OPT='! -path $DIR/bb*'
>> find $DIR $OPT
>>
>> $DIR and * within OPT are essential
>> and no matter what I've tried I can't get the parameter expansion right.
>
> Use arrays:
> declare -a options
>
> options=( '!' '-path' './bb*')
> options+=( '-type' 'f')
> ...
>
> And then:
> find $DIR "${options[@]}"
This one's interesting.
Thanks Luciano!
DIR=.
OPT=('!' '-path' $DIR'/bb*')
find $DIR "${OPT[@]}"
More information about the fedora-list
mailing list