png拡張子を持つgif / jpegファイルを見つけてpngに変換する

png拡張子を持つgif / jpegファイルを見つけてpngに変換する

最初のコマンドは、png拡張子を持つjpeg / gifファイルを見つけて一覧表示します。 2番目のコマンドはファイルをpngに変換します。

  1. find . -type f -name "*.png" | xargs -L 1 -I{} file -i {} | grep -v 'image/png; charset=binary$'

  2. find . -name "*.jpg" -exec mogrify -format png {} \;

これら2つのコマンドを組み合わせます。

答え1

find . -type f -name '*.png' -exec bash -c '[[ "$(file -bi {})" != "image/png; charset=binary" ]] && mogrify -format png {}' \;

このコマンドは、png拡張子を持つ一般的なファイルを見つけ、mogrify -format pngMIMEが "image / png; charset = binary"と一致しない場合は、各ファイルで実行されます。

関連情報