Я знаю, что это обсуждалось много раз, но я до сих пор не могу найти хорошее решение для этого конкретного аспекта. У меня такая же проблема как в bash, так и в DOS. У меня есть файл из множества файлов .csv с именем abcYYMMDDf.csv, и я хочу изменить имя файла на часть ГГММДД, которая соответствует дате его создания. Обратите внимание на «f» после ГГММДД, так что на самом деле я хотел бы, чтобы эквивалент excel mid() брал среднюю дату.
В bash я понимаю функцию переименования и подстановочный знак *, который я пробовал в вариациях
rename abc*f.csv *.csv abc*
думая, что * заменит ГГММДД, но, очевидно, это не так. Я видел другой метод, включающий выбор s/([a-z]*), но он наверняка взял бы все имя файла?
В ДОС пробовал
ren abc*f.csv *.csv