В каталоге есть файлы, имеющие общее начало названия (если конкретно, то timestamp). Задача сгруппировать эти файлы, например, по первым 6 символам и сжать в архив с названием из этих 6 символов. Все файлы находятся на одном уровне и должны паковаться без относительных путей. У меня получилось следующее:
for i in $(ls -1 $SRC | cut -c 1-6 | uniq); do
find $SRC -name "$i*" -printf "%f\n" | tar -zcf $TARGET/$i.tgz -C $SRC --files-from -
done
Можно ли решить эту задачу менее костыльным способом? Какие предложения по улучшению и оптимизации?