Итак, моя конкретная проблема заключается в том, что я загрузил несколько альбомов mp3, которые не имеют номеров дорожек в их названии, поэтому они по умолчанию имеют алфавитную сортировку, что явно не идеально. Я хочу иметь возможность быстро переименовать их с помощью команды терминала, где я использую подстановочные знаки для сортировки пуха. Поэтому я пробовал это с нескольких ракурсов без успеха и хочу получить некоторые рекомендации.Как изменить имена файлов с помощью подстановочных знаков в bash
С одной стороны, я хочу попробовать что-то вроде mv *someSongN* 01-{reference original name here}
. Я не понимаю, во втором аргументе mv
, как я ссылаюсь на исходное имя файла, но с 01-
.
Другая проблема, которую я пробовал, - создать временную переменную bash, за которой следует команда mv
. Я проверил это, создав тестовый файл без расширения - touch test
. Я нашел echo
и mv
относиться к шаблону по-разному. Итак, притворитесь, что тестовый файл является единственным в начале каталога te ... var=te*; echo $var
возвращает test
, но var=te*; mv $var $var.txt
возвращает te*.txt
. Итак, какую стратегию я использую здесь. Я мог бы также сделать это с графическим файловым менеджером, но я сделал это раньше и счел это очень утомительным.
Вы пробовали с помощью 'find' команду? Вы можете запустить 'find' с помощью подстановочных знаков, и это возвращает имя файла, которое вы могли бы установить как переменную. – bluerojo
У треков есть [ID3-теги] (https://en.wikipedia.org/wiki/ID3) внутри них? – dawg
thx, @bluerojo. – cfye14