【发布时间】:2016-10-27 02:49:31
【问题描述】:
我正在 bash 中进行分辨率检查,但这个循环只运行一次并且没有错误地结束:
for file in *; do \
WIDTH = $(identify -ping -format '%h' $file) \
HEIGHT = $(identify -ping -format '%w' $file) \
if [ "$WIDTH" -ge 500 ]; then \
echo width greater than 500 \
elif ["HEIGHT" -ge 500]; then \
echo height greater than 500 \
fi \
done
输出:
height greater than 500 fi done
为什么不检查所有文件?
【问题讨论】:
-
有多少个文件?您是否检查过它是否在您认为的目录中工作?
-
12000+ 个文件,用
ls -al检查。 -
这里的反斜杠实际上是错误的。
-
作业中的空格也是如此。通过shellcheck.net 运行您的代码