.zshrcとかに定義したり別ファイルにして読み込むとか。 shellscript職人からしたらアホっぽいですすいません。
連番でリネーム
function rename_seq(){
local IMG_NAME="files"
local EX="png"
if [ $1 ]; then
IMG_NAME=$1
fi
if [ $2 ];then
EX=$2
fi
local ARG1=$(echo \$_= \"\$N-$IMG_NAME\")
local EXE1="rename -N 01 -X -e '${ARG1}' *.${EX}"
echo $EXE1
$(eval ${EXE1})
local EXE2="rename -S '-' '_' *.${EX}"
echo $EXE2
$(eval ${EXE2})
}
.
├── asdfads.jpg
├── hogehoge.jpg
└── testtest.jpg
第一引数に変更後の名前、第二引数にターゲットの拡張子
rename_seq test jpg
.
├── 01_test.jpg
├── 02_test.jpg
└── 03_test.jpg
複数画像サイズ変更
function resize_images(){
local EX="png"
local SIZE=640
if [ $1 ]; then
SIZE=$1
fi
if [ $2 ]; then
EX=$2
fi
mkdir "./w${SIZE}"
# 3 resize
local EXE1="ls | grep -E '.($EX)$' | sed -e 's/\.$EX//' | xargs -I {} ffmpeg -i {}.$EX -vf scale=${SIZE}:-1 -y w${SIZE}/{}_w$SIZE.$EX"
echo $EXE1
$(eval ${EXE1})
}
第一引数に変更後の画像の横幅のサイズ、第二引数にターゲットの拡張子
resize_images 640 jpg
.
├── 01_test.jpg
├── 02_test.jpg
├── 03_test.jpg
└── w640
├── 01_test_w640.jpg
├── 02_test_w640.jpg
└── 03_test_w640.jpg
以上