ファイルを一括変換するシェルスクリプト

ブログ

flac → alac

#!/bin/bash

for file in *.flac; do
    if [ -f "$file" ]; then
        output_file="${file%.flac}.m4a"
        ffmpeg -i "$file" -vn -c:a alac -nostdin "$output_file"
    fi
done

exit 0

flacでリッピングして、iTunes用に変換したかったときに書いた。

for

ネットにはなんかもっと複雑なやつが上がっていましたがこれでいいっぽいです。

for file in *.flac; do

これでカレントディレクトリ内のflacファイルを対象にできます。

その下のifはファイルが存在するかの確認です。

変換部分

    if [ -f "$file" ]; then
        output_file="${file%.flac}.m4a"
        ffmpeg -i "$file" -vn -c:a alac -nostdin "$output_file"
    fi

まず拡張子を変更したファイル名を変数に入れておく。

あとはffmpegで変換するだけ。

実用性有版

#!/bin/bash

mkdir -p conv

for file in *.flac; do
    if [ -f "$file" ]; then
        output_file="${file%.flac}.m4a"
        ffmpeg -i "$file" -vn -c:a alac -nostdin "conv/$output_file"
    fi
done

exit 0

変換したファイルをフォルダに入れるようにした。

終わり

拡張子とか変換コマンドをいじればいかようにも使えるでしょう。

シェルスクリプトで効率化…?ほぼAIに書かせれば解決しますけどねw

コメント

タイトルとURLをコピーしました