私はこのコードでほとんどそこにいます:
for PHOTO in /home/dvms/Desktop/projs/others/tests/gulp_test/src/images/*.{png,jpeg,jpg}
do
BASE=`basename $PHOTO`
convert "$PHOTO" -quality 50% "/home/dvms/Desktop/projs/others/tests/gulp_test/src/imagesCompressed/$BASE.jpg"
done
ただし、出力ファイルは、末尾に「.jpg」が追加された古いファイル拡張子で表示されます(例:imageA.png.jpg)。
これをどのように解決できますか?
次の行を置き換えます。
BASE=`basename $PHOTO`
これで:
BASE=`basename $PHOTO | cut -d. -f1`
その後、再試行してください。
コードを次の形式に変更します。
for PHOTO in /home/dvms/Desktop/projs/others/tests/gulp_test/src/images/*.{png,jpeg,jpg}
do
BASE=$(basename $PHOTO)
convert "$PHOTO" -quality 50% "/home/dvms/Desktop/projs/others/tests/gulp_test/src/imagesCompressed/${BASE%.*}.jpg"
done
この$BASE.jpg
ではなく${BASE%.*}
を使用してから、拡張機能を追加します。