Другая возможность - использовать rename (версия perl, которая является стандартной, которая поставляется с Ubuntu) и регулярное выражение (RE):
rename -vn 's/.*?([0-9]+).*/sprintf("HxH %03d.mp4", $1)/e' *.mp4
Шаг за шагом:
rename -vn скажет (-v), что переименовывает его, но не выполняет их (-n); Для каждого имени замените (s) первым RE со второй строкой, разделенной /; Первый RE совпадает с нулевым или большим числом символов неживым способом (.*?), за которым следуют одна или несколько цифр ([0-9]+), за которыми следует что угодно; совпадение цифр сохраняется в первой группе благодаря скобке ((...)); Вторая строка расширяется до команды perl sprintf("HxH %03d", $1), где $1 - первая группа, сопоставленная выше; Флаг e для команды s говорит, что я хочу выполнить заменяющее выражение и использовать результат, поэтому sprintf выполняется и печатает номер в $1 в поле размера 3 с ведущими нулями ( [F20]); Наконец, примените команду rename ко всем файлам, заканчивающимся на .mp4 (*.mp4).См.:
% ls
FGBs episode 3 dks.mp4 [www.Example.com]Name-episode-77.mp4
% rename -vn 's/.*?([0-9]+).*/sprintf("HxH %03d.mp4", $1)/e' *.mp4
FGBs episode 3 dks.mp4 renamed as HxH 003.mp4
[www.Example.com]Name-episode-77.mp4 renamed as HxH 077.mp4
Обратите внимание, что это всего лишь тестовый прогон; переименования не могут быть отменены ... давайте запустим это для реального сейчас:
% rename -v 's/.*?([0-9]+).*/sprintf("HxH %03d.mp4", $1)/e' *.mp4
FGBs episode 3 dks.mp4 renamed as HxH 003.mp4
[www.Example.com]Name-episode-77.mp4 renamed as HxH 077.mp4
% ls
HxH 003.mp4 HxH 077.mp4
Регулярное выражение действительно мощное.
Обратите внимание, что будет использоваться только первый набор чисел:
% touch "Another serie 2 ep 34.mp4"
% rename -vn 's/.*?([0-9]+).*/sprintf("HxH %03d.mp4", $1)/e' *.mp4
Another serie 2 ep 34.mp4 renamed as HxH 002.mp4
Чтобы избежать этого ... например, https://stackoverflow.com/questions/5320525/ regular-expression-to-match-last-number-in-a-string и будьте осторожны с «4» в «mp4» ...
Кроме того, он не будет работать, если имя не содержит цифр --- см. комментарий @kos ниже.
Насколько я знаю, alsamixer просто не поддерживает изменение громкости звукового сигнала.
Когда вы открываете alsamixer, вы можете сначала нажать F6 и выбрать свою карту. Теперь вы можете отключить звуковой сигнал с помощью M. Нажатие Esc закрывает alsamixer.
Насколько я знаю, alsamixer просто не поддерживает изменение громкости звукового сигнала.
Когда вы открываете alsamixer, вы можете сначала нажать F6 и выбрать свою карту. Теперь вы можете отключить звуковой сигнал с помощью M. Нажатие Esc закрывает alsamixer.
Насколько я знаю, alsamixer просто не поддерживает изменение громкости звукового сигнала.
Когда вы открываете alsamixer, вы можете сначала нажать F6 и выбрать свою карту. Теперь вы можете отключить звуковой сигнал с помощью M. Нажатие Esc закрывает alsamixer.
Насколько я знаю, alsamixer просто не поддерживает изменение громкости звукового сигнала.
Когда вы открываете alsamixer, вы можете сначала нажать F6 и выбрать свою карту. Теперь вы можете отключить звуковой сигнал с помощью M. Нажатие Esc закрывает alsamixer.
Насколько я знаю, alsamixer просто не поддерживает изменение громкости звукового сигнала.
Когда вы открываете alsamixer, вы можете сначала нажать F6 и выбрать свою карту. Теперь вы можете отключить звуковой сигнал с помощью M. Нажатие Esc закрывает alsamixer.