объявление переменной ksh и цикл

Для изображений JPEG и поворотов под прямым углом используйте jpegtran или exiftran , так как они могут поворачивать изображения без потерь.

for f in *.jpg ; do 
    jpegtran -rotate 180 "$f" > "${f%.jpg}-rotated.jpg"
done

Или для поворота на месте:

for f in *.jpg ; do
    jpegtran -rotate 180 -outfile "$f" "$f"
done

exiftran также имеет флаг -a для автоматического поворота изображения на основе того, что указано в теге ориентации EXIF.

0
13.11.2017, 14:19
1 ответ

${var:-x} означает «если переменная не установлена ​​или пуста, замените ее на x». Таким образом, это зависит от того, что вы подразумеваете под «созданием цикла».

Если вы создаете цикл путем разделения на $IFS, то да, вы можете использовать это для создания переменной для цикла. Однако, если это то, что вы хотите сделать, я бы рекомендовал вместо этого использовать массив ksh:

if [ "$#" -eq 0 ]; then
  set -A sta blabla blabla2 blabla3 # ksh88/pdksh/mksh/ksh93
  sta=(blabla blabla2 blabla3)      # ksh93/mksh
else
  sta=("$@") # use the positional parameters if provided
fi

for x in "${sta[@]}"; do [...]
2
28.01.2020, 02:24

Теги

Похожие вопросы