これなに
大量の絵文字ファイルをDLしてカテゴリーの整理をしようと思ったら・・・
なんと、拡張子がついてなかった😱😱😱
file
コマンドでファイルのMIME typeを判別できるので、
それを利用してとりあえず拡張子を付けようと思って作ってみた
コード
ext.sh
# !/bin/bash
DIRECTORY=$(dirname $1)
FILENAME=$(basename $1)
pushd $DIRECTORY > /dev/null
if [ -f $FILENAME ]; then
INPUT="$FILENAME"
OUTPUT=$(basename ${INPUT} | awk -F. '{ print $1 }').$(file --mime-type -b ${INPUT} | awk -F/ '{ print $2 }')
if [ $INPUT != $OUTPUT ]; then
echo RENAME $DIRECTORY/$INPUT TO $DIRECTORY/$OUTPUT
mv $INPUT $OUTPUT
else
echo $DIRECTORY/$FILENAME
fi
elif [ -d $FILENAME ]; then
echo ENTER DIRECTORY $FILENAME
for f in $FILENAME/*; do
$0 $f
done
echo LEAVE DIRECTORY $FILENAME
fi
popd > /dev/null
結果
(前略)
blob/meowgiggle.png
blob/meowhuggies.png
blob/meowovo.png
blob/meowpats.png
blob/pikablob.png
blob/thinking_blob.png
blob/thinkingwithblobs.png
blob/yayblob.png
LEAVE DIRECTORY blob
ENTER DIRECTORY Blobs
RENAME Blobs/blobboo TO Blobs/blobboo.png
RENAME Blobs/sblob TO Blobs/sblob.png
RENAME Blobs/sblob_0w0 TO Blobs/sblob_0w0.png
RENAME Blobs/sblob_3c TO Blobs/sblob_3c.png
RENAME Blobs/sblob_amused TO Blobs/sblob_amused.png
RENAME Blobs/sblob_angel TO Blobs/sblob_angel.png
RENAME Blobs/sblob_angry TO Blobs/sblob_angry.png
RENAME Blobs/sblob_artist TO Blobs/sblob_artist.png
(後略)
ちゃんと動いた
めでたしめでたし