Linux で .webp 画像を .png に変換する方法
Linux Ubuntu 20.04 でテスト済み
この質問は、「linux convert .webp image to png」という Google 検索のトップ ヒットです。したがって、ここでつまずき、その簡単な答えが欲しいだけの人のために、ここにあります:
# 1. Install the `webp` tool
sudo apt update
sudo apt install webp
# 2. Use it: convert in.webp to out.png
dwebp in.webp -o out.png
終わり! out.png
ができました .
参考文献
<オール>dwebp
について学びました 質問自体から変換/名前変更が多い場合は、GNU Parallel を使用することをお勧めします 並行して行うことで変換を高速化するだけでなく、ファイル名を変更する機能も利用します。
必要なコマンドは次のとおりです:
parallel dwebp {} -o {.}.png ::: *.jpg
{.}
「元の拡張子を除いたファイル名」を意味します .
サブディレクトリにも再帰したい場合は、次を使用できます:
find . -name "*.jpg" -print0 | parallel -0 dwebp {} -o {.}.png
プログレス メーター、または「到着予定時刻」が必要な場合 、 --progress
を追加できます または --eta
parallel
の後 コマンド。
GNU Parallel について知りたい場合 --dry-run
を追加して、実際には何も実行せずに実行します .
GNU Parallel を称賛します CPU が「太る」 時代のあなたへ (より多くのコア) よりも高速です。
parallel
を必要としない短いワンライナーでそれを行いました システムにインストールする
for x in `ls -1 *.jpg`; do dwebp {} -o ${x%.*}.png ::: $x; done
そして、これは現在のディレクトリで機能します
@mark-setchell の再帰的ソリューションを次のように修正してみます:
for x in `find . -name "*.jpg"`; do dwebp {} -o ${x%.*}.png ::: $x; done
${x%.*}
部分はここで説明が必要なものです - それは bash に .
を取るように指示します x
のドットの後のすべて ここでの正規表現が怠惰か貪欲かをチェックしなかったため、ドットが多い名前では誤動作する傾向があります。したがって、答えはさらに調整できます。