我编写了一个脚本来访问每个目录,并使用 imagemagick 对它们进行蒙太奇以用于游戏目的的平铺。
find . -type d | while read d; do
# $k = filename generated from folder name
montage -border 0 -geometry +0+0 -background none -tile 6x $d/* ~/tiles/$k.png
done
像这样命名图像时效果很好,因为使用 * 时会保留顺序:im_0001.png, im_0002.png...
但是当有人将图像命名为这样时它会失败:im_1.png, im_2.png
, .. 因为im_10.png
在之前im_2.png
并且顺序失败。一直手动修复文件名并不容易,有没有办法通过枚举文件名*
但强制使用数字顺序?我知道 sort 函数具有该功能,但我如何在我的脚本中做到这一点?由于文件名没有结构,我很好奇如何做到这一点。