Portál AbcLinuxu, 10. května 2025 02:42
Řešení dotazu:
#!/bin/bash for text in `find ./*.*` ; do echo $text ffmpeg -i "$text" -r 12 -s qcif -ar 8000 -ab 10.2k -ac 1 -b 60k "${text:0:$((${#text}-4))}.3gp" doneJe to ještě z doby kdy jsem moc neuměl regexpový a jiný vychytávky, ale jako start je to imho dobrý. Jestli umí ffmpeg i něco chytřejšího jako %d na vstupu, nevím. Na výstupu to umí a jednominutový pokus s %d na vstupu nefungoval. U toho kopírování jména bude problém imho s příponou (asi by chtělo zkonstruovat právě nějaký regulární výraz na poslední tečku).
#!/bin/bash OFS=$IFS IFS=' ' for f in `ls *.avi`; do out=`echo $f | sed 's/\.avi$/\.mp3/'` ffmpeg -i "$f" -vn "$out" done IFS=$OFS
for x in ./*.[aA][vV][iI]; do ffmpeg -i "$x" -vn "${x:0:-3}mp3" done
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.