I am writing this Bash script:
count=0
result
for d in `ls -1 $IMAGE_DIR | egrep \"jpg$\"`
do
if (( (count % 4) == 0 )); then
result=\"a
The =
operator must always be written without spaces around it:
result="$result $d"
(Pretty much the most important difference in shell programming to normal programming is that whitespace matters in places where you wouldn't expect it. This is one of them.)
Something like this?
count=0
find $IMAGE_DIR -name "*.jpg" |
while read f; do
if (( (count % 4) == 0 )); then
result="abc $f"
if (( count > 0 )); then
echo $result
fi
else
result="$result $d"
fi
(( count++ ))
done
Something like this (untested, of course):
count=0 result=
for d in "$IMAGE_DIR"/*jpg; do
(( ++count % 4 == 0 )) &&
result="abc $d"
(( count > 0 )) &&
printf '%s\n' "$result" ||
result+=$d
done