> I am missing how to create a bash-pattern that excludes a specific
pattern.
>
> I.e. to ignore any file with '-IGN-' somewhere in the filename.
>
> The best I've come up with so far has been to use shell to build
> a pattern, but I know it is limited in functionality. I.e.:
>
> ls !($(echo *+(-IGN-)*|tr " " "|"))
>
> I tried the above in a dir that has 2 files w/the pattern, and
> 532 w/o, and it worked, but how much of that was 'luck'?
>
> Is there a better bash-pattern that doesn't use tr and such?
A variation:
shopt -s nullglob
for f in ${1:-.}/*; do
if [[ "${f}" != *-IGN-* ]];
then printf -- '%s\n' "${f}"
fi
done
Peggy Russell