оболочка :удалить шаблон из имени файла

При использовании -i inplaceс GNU awkвы будете выполнять редактирование данного файла в -месте. Это вывод программы awk, который записывается обратно в файл. Если ваша awkпрограмма ничего не выводит, файл будет очищен (так же sed -iработает с GNUsed).

Поэтому следует использовать

awk -i inplace -F ',' '{ OFS=","; $2 = strftime("%Y-%m-%d %H:%M:%S", $2); print }' file.csv

или, чтобы не устанавливать OFSдля каждой строки ввода,

awk -i inplace -F ',' -v OFS=',' '{ $2 = strftime("%Y-%m-%d %H:%M:%S", $2); print }' file.csv

или, короче,

awk -i inplace -F ',' -v OFS=',' '{ $2 = strftime("%F %T", $2) }; 1' file.csv
0
12.10.2020, 13:43
1 ответ

Вы можете использовать perl -переименовать (есть другая программа под названием rename, которая является частью пакета util-linux):

perl-rename 's,_grid12_,_,' *

Вам даже не нужен цикл, так как perl-renameпереименует все файлы в текущий каталог.

2
18.03.2021, 22:58

Теги

Похожие вопросы