1 DATE=$(date '+%Y%m%d')
2
3 for FILE in MAA.TRD*.csv
4 do
5 CODE=$(echo $FILE | cut -d. -f3)
6 CLIENT=$(grep -w $CODE ClientNames | sed 's/^.*, //')
7 NEWFILE=$CLIENT.$DATE.csv
8 mv $FILE $NEWFILE
9 echo " Zipping of $NEWFILE is starting "
10 zip -j $NEWFILE.zip $NEWFILE
11 done
1 - установить дату , лучше всего использовать такой формат, в котором не будет пробелов, не стесняйтесь настраивать свои предпочтения
3 - просто зацикливайтесь на глобусе файлов, которые есть в каталоге (это расширится на все файлы, соответствующие соглашение об именах, которое вы указываете)
5 - получить КОД из имени файла
6 - получить КЛИЕНТА из ClientNames на основе КОДА текущего файла (используя здесь sed, чтобы включить удаление пробела после запятой, если есть на самом деле не пробел cut -d, вместо этого будет работать -f2
) - предполагается, что ClientNames находится в CWD, при необходимости используйте полный путь
7 - создайте новое имя файла для удобства повторного использования позже
8 - переименовать файл в новое имя
10 - заархивировать файл (zip-файл не должен иметь расширение .csv)