Re: Как повернуть изобра жение в куче фоток?
Андрей Гончар wrote: 18 ноября 2010 г. 15:12 пользователь James Brown jbrownfi...@gmail.com написал: Имеется очень много фотографий судебного дела (больше тысячи) в двух дирах, все они лежат боком, просматривать их очень неудобно, т.к. надо поворачивать каждую. С помощью чего их можно одновременно повернуть (в моем случае направо на 90 градусов)? С винде такая возможность была в Windows Explorer - выделяешь все и кликаешь повернуть, в nautiluse такого нет (по крайней мере, у меня). Есть ли какой-то дополнительный пакет для наутилуса, позволяющий делать это, или, лучше, какая консольная команда? -- To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org Archive: http://lists.debian.org/4ce51810.9020...@gmail.com Есть imagemagick. С аргументом -rotate http://www.imagemagick.org/script/command-line-options.php#rotate Спс. Написал такой скриптец (прилагается),запускаю его в дире где фото, в таком виде: rotate_90 * Поворачивает только одно первое фото, почему-то. Если запускаю в этой дире команду такого вида: convert * -rotate 90 * (по сути, то же, что и скрипт), вообще никакого эффекта, фото не поворачиваются, сначала команда зависает, затем вся система... #!/bin/sh #rotate_90 #ÐовеÑнÑÑÑ ÑоÑогÑаÑии на 90 гÑадÑÑов впÑаво convert $1 -rotate 90 $1
Re: Как повернуть изобра жение в куче фоток?
Peter Pentchev wrote: On Thu, Nov 18, 2010 at 12:12:00PM +, James Brown wrote: Если фотографии в формате JPEG, тогда jpegtran из libjpeg-progs. Если в каком-то другом формате, тогда convert из ImageMagick или какая-то комбинация. программ из netpbm (в большинстве случаев хватит *topnm | pnmflip | pnmto*) Всего лучшего, Петр jpegtran -rotate 90 * jpegtran: only one input file В мане не нашел, как все файлы в дире повернуть, или отменить это ограничение, блин. Видимо, надо скрипт с циклом while писать, но что-то туплю, как прописать, чтобы он корректно завершился... -- To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org Archive: http://lists.debian.org/4ce522bf.4070...@gmail.com
Re: Как повернуть изобра жение в куче фоток?
James Brown wrote: Написал такой скриптец (прилагается),запускаю его в дире где фото, в таком виде: rotate_90 * Поворачивает только одно первое фото, почему-то. Если запускаю в этой дире команду такого вида: convert * -rotate 90 * (по сути, то же, что и скрипт) нет, это совсем не то же самое. * заменяется на несколько параметров (по числу файлов в каталоге). Вы можете использовать что-то в духе for p in $@; do echo $p done -- To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org Archive: http://lists.debian.org/4ce5278f.9040...@yandex.ru
Re: Как повернуть изобра жение в куче фоток?
Peter Pentchev wrote: On Thu, Nov 18, 2010 at 12:57:35PM +, James Brown wrote: Peter Pentchev wrote: On Thu, Nov 18, 2010 at 12:12:00PM +, James Brown wrote: Если фотографии в формате JPEG, тогда jpegtran из libjpeg-progs. Если в каком-то другом формате, тогда convert из ImageMagick или какая-то комбинация. программ из netpbm (в большинстве случаев хватит *topnm | pnmflip | pnmto*) Всего лучшего, Петр jpegtran -rotate 90 * jpegtran: only one input file В мане не нашел, как все файлы в дире повернуть, или отменить это ограничение, блин. Видимо, надо скрипт с циклом while писатьjpegtran -rotate 90, но что-то туплю, как прописать, чтобы он корректно завершился... А не можно find | xargs -n1 или find -exec? Всего лучшего, Петр Не хочет, в терминале начинают бегать кракозябли, в наутилусе файлы не поворачиваются при этом. Это если исполнять так: find . -type f -exec jpegtran -rotate 90 {} \; или find . -type f | xargs -n1 jpegtran -rotate 90 Если без -n1 то опять то же: find . -type f | xargs jpegtran -rotate 90 jpegtran: only one input file -- To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org Archive: http://lists.debian.org/4ce527a7.6060...@gmail.com
Re: Как повернуть изобра жение в куче фоток?
Андрей Гончар wrote: Я бы сделал find [путь до папки с фото] -iname '*jpg' -exec convert {} -rotate 90 {} \; Как-то так... Самое оно It works!!! -- To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org Archive: http://lists.debian.org/4ce52850.2080...@gmail.com
Re: Как повернуть изобра жение в куче фоток?
Dmitry E. Oboukhov wrote: for i in $@; do convert $i -rotate 90 $i done Благодарю -- To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org Archive: http://lists.debian.org/4ce528bd.3010...@gmail.com
Re: Как повернуть изобра жение в куче фоток?
Ed wrote: James Brown wrote: Написал такой скриптец (прилагается),запускаю его в дире где фото, в таком виде: rotate_90 * Поворачивает только одно первое фото, почему-то. Если запускаю в этой дире команду такого вида: convert * -rotate 90 * (по сути, то же, что и скрипт) нет, это совсем не то же самое. * заменяется на несколько параметров (по числу файлов в каталоге). Вы можете использовать что-то в духе for p in $@; do echo $p done А,да, ступил, convert * получается что же что convert file1 file2 file3 fileN которые есть в дире. Извиняюсь. -- To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org Archive: http://lists.debian.org/4ce52a3b.9090...@gmail.com
Re: Как повернуть изобра жение в куче фоток?
18.11.2010 15:53, James Brown пишет: Андрей Гончар wrote: 18 ноября 2010 г. 15:12 пользователь James Brown jbrownfi...@gmail.com написал: Имеется очень много фотографий судебного дела (больше тысячи) в двух дирах, все они лежат боком, просматривать их очень неудобно, т.к. надо поворачивать каждую. С помощью чего их можно одновременно повернуть (в моем случае направо на 90 градусов)? С винде такая возможность была в Windows Explorer - выделяешь все и кликаешь повернуть, в nautiluse такого нет (по крайней мере, у меня). Есть ли какой-то дополнительный пакет для наутилуса, позволяющий делать это, или, лучше, какая консольная команда? -- To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org Archive: http://lists.debian.org/4ce51810.9020...@gmail.com Есть imagemagick. С аргументом -rotate http://www.imagemagick.org/script/command-line-options.php#rotate Спс. Написал такой скриптец (прилагается),запускаю его в дире где фото, в таком виде: rotate_90 * Поворачивает только одно первое фото, почему-то. Если запускаю в этой дире команду такого вида: convert * -rotate 90 * (по сути, то же, что и скрипт), вообще никакого эффекта, фото не поворачиваются, сначала команда зависает, затем вся система... У меня работает вот такой скрипт... #!/bin/bash lst=`ls $1/*.jpg` count=0 for i in $lst do convert -rotate 90 $i $i if [ $? == 1 ]; then echo Ошибка в обработке $1/$i файла else count=$((count + 1)) continue fi done echo -e Обработано $count фото -- To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org Archive: http://lists.debian.org/4ce52b62.4090...@yandex.ru
Re: Как повернуть изобра жение в куче фоток? (Resolved)
Большое спасибо всем, проблема решена. Соответственно, работают: 1) find [путь до папки с фото] -iname '*jpg' -exec convert {} -rotate 90 {} \; (как я понимаю, применимо ко всем изображениям, не только .jpeg и .jpp; 2) Скрипт т. Гончара. 3) Для .jpeg , похоже, наилучшее решение - exiftran, для которого вообще не надо ни find, ни создания скриптов, т.к. он работает со многими файлами сам по себе, даже в мане у него такой пример: exiftran -ai *.jpeg (Ну, или вместо опции -a, там могут быть указаны конкретные опции, как файлы поворочивать, все они есть в мане). Большое спс. -- To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org Archive: http://lists.debian.org/4ce52c7e.6090...@gmail.com
Re: Как повернуть изобра жение в куче фоток?
Колодченко Алексей wrote: 18.11.2010 15:53, James Brown пишет: Андрей Гончар wrote: 18 ноября 2010 г. 15:12 пользователь James Brown jbrownfi...@gmail.com написал: Имеется очень много фотографий судебного дела (больше тысячи) в двух дирах, все они лежат боком, просматривать их очень неудобно, т.к. надо поворачивать каждую. С помощью чего их можно одновременно повернуть (в моем случае направо на 90 градусов)? С винде такая возможность была в Windows Explorer - выделяешь все и кликаешь повернуть, в nautiluse такого нет (по крайней мере, у меня). Есть ли какой-то дополнительный пакет для наутилуса, позволяющий делать это, или, лучше, какая консольная команда? -- To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org Archive: http://lists.debian.org/4ce51810.9020...@gmail.com Есть imagemagick. С аргументом -rotate http://www.imagemagick.org/script/command-line-options.php#rotate Спс. Написал такой скриптец (прилагается),запускаю его в дире где фото, в таком виде: rotate_90 * Поворачивает только одно первое фото, почему-то. Если запускаю в этой дире команду такого вида: convert * -rotate 90 * (по сути, то же, что и скрипт), вообще никакого эффекта, фото не поворачиваются, сначала команда зависает, затем вся система... У меня работает вот такой скрипт... #!/bin/bash lst=`ls $1/*.jpg` count=0 for i in $lst do convert -rotate 90 $i $i if [ $? == 1 ]; then echo Ошибка в обработке $1/$i файла else count=$((count + 1)) continue fi done echo -e Обработано $count фото О, видимо, самое оно. Только не учитывает, что есть еще файлы .jpeg, и иногда расширения записываются фотиками большими буквами, видимо это можно исправить (если нужно) указанием в команде, вывод которой присваивается переменной lst, соответствующим регулярным выражением. -- To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org Archive: http://lists.debian.org/4ce52e7e.5080...@gmail.com
Re: Как повернуть изобра жение в куче фоток?
18.11.2010 16:47, James Brown пишет: Колодченко Алексей wrote: 18.11.2010 15:53, James Brown пишет: Андрей Гончар wrote: 18 ноября 2010 г. 15:12 пользователь James Brown jbrownfi...@gmail.com написал: Имеется очень много фотографий судебного дела (больше тысячи) в двух дирах, все они лежат боком, просматривать их очень неудобно, т.к. надо поворачивать каждую. С помощью чего их можно одновременно повернуть (в моем случае направо на 90 градусов)? С винде такая возможность была в Windows Explorer - выделяешь все и кликаешь повернуть, в nautiluse такого нет (по крайней мере, у меня). Есть ли какой-то дополнительный пакет для наутилуса, позволяющий делать это, или, лучше, какая консольная команда? -- To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org Archive: http://lists.debian.org/4ce51810.9020...@gmail.com Есть imagemagick. С аргументом -rotate http://www.imagemagick.org/script/command-line-options.php#rotate Спс. Написал такой скриптец (прилагается),запускаю его в дире где фото, в таком виде: rotate_90 * Поворачивает только одно первое фото, почему-то. Если запускаю в этой дире команду такого вида: convert * -rotate 90 * (по сути, то же, что и скрипт), вообще никакого эффекта, фото не поворачиваются, сначала команда зависает, затем вся система... У меня работает вот такой скрипт... #!/bin/bash lst=`ls $1/*.jpg` count=0 for i in $lst do convert -rotate 90 $i $i if [ $? == 1 ]; then echo Ошибка в обработке $1/$i файла else count=$((count + 1)) continue fi done echo -e Обработано $count фото О, видимо, самое оно. Только не учитывает, что есть еще файлы .jpeg, и иногда расширения записываются фотиками большими буквами, видимо это можно исправить (если нужно) указанием в команде, вывод которой присваивается переменной lst, соответствующим регулярным выражением. Объяви переменную lst=`ls $1/*.jpeg *.JPEG *.jpg *.JPG` или добавь те типы, которые тебе нужны... -- To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org Archive: http://lists.debian.org/4ce53117.6030...@yandex.ru