Они названы с date '+%d-%m-%Y, %a, %k.%M.%S' . Я хочу переименовать их на date '+%Y-%m-%d, %a, %H.%M.%S' .

1 ответ1

0

Используйте команду prename :

prename 's/^(..)-(..)-(....)/$3-$2-$1/; s/  / 0/' [list of files]

Это будет захватывать день, месяц, год и переписывать его в порядке год, месяц, день. Затем он возьмет все вхождения двойных пробелов (что происходит только перед часом, и только если это час <10, когда отформатирован с% k) и преобразует его в "0", что на практике делает его эквивалентным% H.

prename - это скрипт Perl, включенный в большинство стандартных установок Perl (по моему опыту), и, таким образом, он, вероятно, уже присутствует в вашей системе. Это часто (например, в системах на основе Debian) связано с rename .

Используйте -n (--no-act), чтобы prename при первом запуске, чтобы показать, какие изменения будут внесены после удаления ключа.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .