Bash
使用 FFmpeg 將所有 *flac 轉換為 *.mp3 的 Bash 腳本?
我想將特定文件夾中的所有 *.flac 轉換為 *.mp3。
這是我嘗試過的,但不起作用:
# change to the home directory cd ~/music # convert all *.flac files ffmpeg -i *.flac -acodec libmp3lame *.mp3 # (optional: check whether there are any errors printed on the terminal) sleep 60
如何達到我的目標?
試試這個:
for i in *.flac ; do ffmpeg -i "$i" -acodec libmp3lame "$(basename "${i/.flac}")".mp3 sleep 60 done
一個簡單的 1 班輪解決方案:
find -name "*.flac" -exec ffmpeg -i {} -acodec libmp3lame -ab 128k {}.mp3 \;
http://lewisdiamond.blogspot.ca/2012/01/converting-flac-to-mp3.html
請注意,這將在給定目錄中遞歸應用。即,如果您從您的 Music 文件夾執行它,它將轉換子文件夾中的所有flacs,並在其旁邊生成一個 .mp3。您也可以在不使用 ffmpeg 的情況下直接使用 flac 和 lame(即讀取 w/flac、管道到 lame、輸出到文件 .mp3),如鍊接所示。