>Anybody feel like producing an all builtin function for this?
>Something like "remove pattern list" or "remove index list". It
>shouldn't be too hard.
Trivial:
fn remove { pat=() i=() list=() {
pat=$1
shift || { echo 'Usage erorr' >[1=2] ; return 1; }
for (i) eval ~ $i $pat || list=($list $i)
echo $list
} }
remove '*.c' foo.c bar baz.c
path=`{remove /usr/share/bin $path}