У меня есть 100 .png файлов в папке, скажем test.png, example.png и т.д.
Я хочу добавить их к New_
чтобы они были переименованы в New_test.png
, New_example.png
и т.д.
Как я могу сделать это в оболочке.
У меня есть 100 .png файлов в папке, скажем test.png, example.png и т.д.
Я хочу добавить их к New_
чтобы они были переименованы в New_test.png
, New_example.png
и т.д.
Как я могу сделать это в оболочке.
Вы не указали операционную систему. Этот ответ предполагает Windows.
Моей первой мыслью была простая команда, такая как
for %f in (*.png) do rename "%f" "New_%f"
Но файл с именем a.png
был сначала переименован в New_a.png
и перемещен в алфавитном порядке :-( Цикл переименовал этот файл во второй раз в New_New_a.png.
Следовательно, это необходимо сделать в два этапа:
dir /b *.png > png.txt
for /F %l in (png.txt) do rename "%l" "New_%l"
del png.txt
Первая строка создает текстовый файл, содержащий имена всех файлов PNG в текущем каталоге. Вторая строка анализирует каждую строку файла и переименовывает PNG.