У меня есть 519 файлов JPG в папке, которую мне нужно для массового переименования. В файле newnames.txt у меня есть список 519 новых имен файлов. Есть ли способ через командную строку или perl запустить этот список имен (каждый в новой строке) и переименовать все файлы?Массовое переименование файлов JPG с использованием командной строки или perl?
-2
A
ответ
0
Поскольку вы не указали, как вы отобразить имена файлов с данными «newnames.txt», я дам несколько решений:
Если имена файлов сортируются в алфавитном порядке, и порядок newnames соответствует тому порядка :
use File::Slurp;
use File::Copy qw/move/;
my @newnames=read_file("newnames.txt");
chomp(@newnames);
my @files = glob("*.JPG");
for (my $i=0; $i < @files; $i++) {
die "Not enough new names for file $files[$i]" unless $newnames[$i];
move($files[$i], $newnames[$i])
or die "Failed to move $files[$i] to $newnames[$i] : $!";
}
Если имена файлов в том же файле, новые имена, в 2 колонки:
use File::Slurp;
use File::Copy qw/move/;
my @newnames=read_file("newnames.txt");
chomp(@newnames);
foreach my $line (@newnames) {
my ($file, $new)= split(/,/, $line);
move($file, $new)
or die "Failed to move $file to $new : $!";
}
Смежные вопросы
- 1. Массовое переименование файлов (Linux)
- 2. Массовое переименование и перемещение файлов в Perl
- 3. Массовое переименование с использованием regexp
- 4. Массовое переименование файлов?
- 5. Переименование изображений с использованием командной строки
- 6. Массовое переименование файлов на основе поиска
- 7. linux script: массовое переименование файлов с пробелами
- 8. Perl-выражения в командной строке - переименование файлов
- 9. Как массовое переименование файлов в ruby
- 10. Переименование .jpg файлов в подпапках
- 11. Массовое переименование файла в Linux
- 12. Как массовое переименование только части имен файлов?
- 13. Массовое переименование внутри файлов, включая подкаталоги
- 14. Массовое переименование файлов в PowerShell с последовательными числовыми суффиксами
- 15. Пакетное переименование с командной строки
- 16. Массовое переименование файлов с произвольным именем без знания их пути
- 17. LDAP Массовое переименование возможно?
- 18. массовое переименование файлов в папке с именем родительской папки
- 19. Массовое переименование авторов Git?
- 20. массовое переименование переменных Java
- 21. пакетное переименование файлов с выражениями perl
- 22. MediaWiki массовое переименование страницы
- 23. Переименование нескольких файлов в Windows с помощью командной строки?
- 24. Как сгенерировать переименование нескольких файлов с помощью командной строки Mac
- 25. Пакетное переименование файлов с использованием имени папки?
- 26. массовое переименование файлов, переупорядочивающих имена файлов на основе разделителя
- 27. Массовое переименование файлов с двойной цитатой в имени
- 28. Массовое переименование в сценарии оболочки
- 29. Массовое переименование объектов в облачном хранилище Google
- 30. Массовое переименование группы файлов с звездочками (*) в наименовании к hashs (#)
взглянуть на 'rename' полезности. Если это не поможет, вам необходимо обновить свой вопрос, как вы выполняете сопоставление между newnames.txt и фактическими именами файлов. Базовый цикл bash выглядит так: 'while read nn; do echo $ nn; done
Посмотрите на функцию 'move' в модуле File :: Copy'. – Nate
1. Что вы сделали до сих пор? 2. Каков формат newnames.txt? –