Archiv verlassen und diese Seite im Standarddesign anzeigen : Anfänger braucht Hilfe
klaus_harrer
23-12-2003, 22:34
Hallo
Ich möchte alle *.wav in *.ogg umbennenen.
#!/bin/sh
for i in *.wav
do
test=`$i | sed 's/wav/ogg/'`
echo $test
done
Das Problem sed wird nicht interpretiert. Woran liegt es?
MfG
Klaus
quinte17
24-12-2003, 00:31
in der shell:
rename .wav .ogg *.wav
Wenn Du es wirklich via bash machen moechtest:
#!/bin/sh
for i in *.wav
do
mv $i ${i%.wav}\.ogg
# back slash muss nicht unbedingt sein, ist aber sauberer
done
peschmae
24-12-2003, 08:02
ich mach das jeweils mit "basename" :)
aber mal abgesehen davon: Was versprichst du dir von dieser Aktion?
MfG Peschmä
klaus_harrer
24-12-2003, 08:36
Hallo
Ich verspreche mir davon das ich den Titel einer wav Datei die ich in einer ogg Datei encode von der wav Datei übernehme.
oggenc meine_datei.wav -q 3 meine_datei.ogg
Da ich aber zehn wav Dateien habe möchte ich es in einer Schleife machen.
Und ich Denke ich könnte es auch mit sed machen.
for i in *.wav
do
neue_datei=$($i | sed 's/wav/ogg/')
oggenc $i -q 3 $neue_datei
done
So hatte ich mir das eigentlich gedacht, nur das sed nicht mitspielt.
MfG
Klaus
peschmae
24-12-2003, 11:21
ah, ok. Verstanden. Oben stand drum "umbenennen" - und das macht man dann meist mit mv - was ja gar nix bringt ;)
Schwierig wirds vor allem weil normalerweise Titel von Sounddateien aus mehreren Wörtern bestehen und die meist durch Leerschläge getrennt wurden - das benötigt dann richtig gesetzte Anführungszeichen.
Versuchs mal irgendwie so:
#!/bin/bash
for f in *; do oggenc "$f" -q 3 "`basename "$f" wav`ogg"; done
hab ich aus einem Script von mir ausgebuddelt das was ganz ähnliches tut. Die Veränderungen waren nicht allzu gross, also sollte es gehen. :)
MfG Peschmä
test=`$i | sed 's/wav/ogg/'`
ich vermute mal, dass da versucht wird $1 auszufuehren... vielleicht ist:
test=`echo $i | sed 's/\.wav/\.ogg/'`
besser.
(arbeite allerdings kaum mit der Bash)
mfg
c.
quinte17
24-12-2003, 20:48
mhh ich versteh dass problem nicht... bei mir tut der oggenc von selber umbennennen wenns eine *.wav ist macht er eine *.ogg draus...
mein script:
cdparanoia -B &&
rename .cdda.wav .wav *.wav &&
oggenc -q 6 * &&
rm *.wav &&
echo -e "\a"
dass einzige problem dass ich hab ist, dass der die wavs nicht löscht.. (macht auch irgendwo sinn deshalb lösch ich sie ja ^^)
hier tut er eine cd -> wav -> ogg in den aktuellen ordner
greetz
Powered by vBulletin® Version 4.2.5 Copyright ©2024 Adduco Digital e.K. und vBulletin Solutions, Inc. Alle Rechte vorbehalten.