Yuri,
Vot vam primer. Esli xotitie menyat bsye faily v odnoi papke.
.wav na .mp3
[EMAIL PROTECTED]:~/test$ touch a.wav
[EMAIL PROTECTED]:~/test$ touch b.wav
[EMAIL PROTECTED]:~/test$ touch c.wav
[EMAIL PROTECTED]:~/test$ for i in `ls *.wav` ; do mv $i `basename $i .wav`.mp3
; done ;
[EMAIL PROTECTED]:~/test$ ls -l
-rw-r--r-- 1 red red 0 2007-03-01 09:04 a.mp3
-rw-r--r-- 1 red red 0 2007-03-01 09:04 b.mp3
-rw-r--r-- 1 red red 0 2007-03-01 09:04 c.mp3
[EMAIL PROTECTED]:~/test$
[EMAIL PROTECTED] wrote:
On Wed, 28 Feb 2007, Mikhail Ramendik wrote:
On Monday 26 February 2007 03:33, Mikhail Gusarov wrote:
MR> Вопрос: как корректно в shell script поменять последнюю часть
MR> после точки (в досе говорили "расширение") файла? В смысле, есть
MR> blablabla.wav, а надо blablabla.mp3 , для любого blablabla.
${foobar%.wav}.mp3
К сожалению, я не понял, как этим пользоваться. И в инете найти тоже
не сумел.
Если в $1 у меня foobar.wav , где foobar произвольное, то что мне
надо написать в скрипте, чтобы получить foobar.mp3 ?
На выбор:
1) newname=`basename $1 .wav`.mp3
2) newname=`echo $1 | sed 's/\.wav$/\.mp3/'`
3) newname=${1%.wav}.mp3
последнее наименее переносимое, так как bash специфичное...
Успехов,
Юра
--
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]