我有一个命令行问题 - 可能是一个很简单的问题,但似乎我无法在 google 中输入正确的词。
所以我想使用 imagemagick 调整文件夹中所有 *.png 图像的大小 - 这类似于“convert -resize 80%”,我想要“filename”?“小文件名”
所以我试过:
for f in *.png ; convert -resize 80% "$f" "small_$f" ; done
Run Code Online (Sandbox Code Playgroud)
但是“意外标记附近的语法错误`convert”-我想您不能将 imagemagick 命令导入 bash 吗?
如果你能帮忙,我会很高兴。
你错过了do之后for ...的字符串。这是一个稍微修改过的脚本,但是如果您do在其中添加缺失的内容,您的版本也可以使用。
for f in *.png
do
echo "Converting $f."
convert "$f" -resize 80% "${f/.png/-80%.png}"
done
Run Code Online (Sandbox Code Playgroud)
此处更改名称的工作原理如下:对于$f作为文本字符串的每个,找到它的.png部分并将其更改为-80%.png