Это ls
’ представление неработающих символических ссылок; см. Что означает красное -имя файла?
Тот факт, что ссылки красные, или даже символические ссылки не работают, ничего не говорит о том, работают пространства имен или нет; это связано только с представлением пространства имен в /proc
. Существование файлов означает, что соответствующие пространства имен настроены и, предположительно, работают правильно.
Вы можете написать простую функцию, как показано ниже, для получения ширины и высоты изображения, затем проверить, если w>h, и повернуть его.
rotate() {
(( $(identify -format '%w > %h' "$1") )) && convert "$1" -rotate 90 "rotated_$1";
}
Назовите это как rotate image.png
.
Другой подход, предложенный и представленный пользователем 414777 с использованием инструмента exif , который выполняет поворот на основе тегов ориентации EXIF :
exif -co rotated_"$1" --ifd=0 --tag=0x0112 --set-value=6 "$1"
Переключение пояснений:
TagID TagName Writable Group Values/Notes
0x0112 Orientation int16u IFD0 1 = Horizontal (normal)
2 = Mirror horizontal
3 = Rotate 180
4 = Mirror vertical
5 = Mirror horizontal and rotate 270 CW
6 = Rotate 90 CW
7 = Mirror horizontal and rotate 90 CW
8 = Rotate 270 CW