Часто бывает нужно заменить содержимое файла, переименовать группу файлов или еще как то отредактировать список, вот в таких случаях на помощь приходит Perl. Примеры ниже покажут насколько удобно пользоваться Перлом из командной строки .
Заменить слово в «helpline» на «hotline» и сохранить бэкап файла в *.bak.
perl -p -i.bak -e '$_ =~ s/helpline/hotline/g' queue_log
Переименовать группу файлов noise_*.wav в *.wav
ls -l *.wav | perl -e 'while(<>) {chomp; if (m/noise_(\d)/.wav) {print "$_ $1\n"; system("mv noise_$1\.wav $1.wav");}}
Конвертируем из alaw в wav
ls | perl -e 'while(<>) {chomp; if(m/^(.+)\.alaw/) {print $1; print "\n"; system("sox -t raw -b -A -r 8000 $1.alaw -t wav -u -b $1.wav");}}'
Если у нас .wav файл с частотой 44кГц, то сэймпл до 8 кГц можно поменять так.
ls | perl -e 'while(<>){chomp;if(m/^(.+)\.wav/){print"$1.wav\n";system("sox $1.wav -c 1 -r 8000 $1-out.wav");}}'
Пока все. Сюда буду добавлять по мере необходимости, остальные наработки.