OCSP является путем к программам, которые используют сертификаты X.509 (такие как что-либо с помощью SSL, как веб-браузеры для https:
URL), чтобы проверить, был ли сертификат отменен, потому что он был поставлен под угрозу.
Вы не видите их при использовании https:
непосредственно, потому что Вам был бы нужен пакетный трассировщик, который может дешифровать SSL и сертификат SSL, используемый для шифрования — который в большинстве случаев Вы не будете иметь.
Ну, самый легкий способ сделать это должно было бы использовать ImageMagick. Это должно быть в репозиториях Вашего дистрибутива Linux, поскольку debian основывал системы, выполненные:
sudo apt-get install imagemagick
Одна из программ комплекта ImageMagick identify
, это распечатает характеристики списка входных файлов изображений. Объединение его с sort
даст Вам список изображений, отсортированных по размеру (можно изменить png для любого расширения (расширений), которое Вы имеете:
identify *png | sort -gk 3
При фактической необходимости в соотношении сторон и не только размере попробуйте что-то вроде этого:
Простая опция, предполагает, что Ваши названия картинки не имеют никаких пробелов:
identify *png *jpg *gif | \
gawk '{split($3,sizes,"x"); print $1,sizes[1]/sizes[2]}' | \
sed 's/\[.\]//' | sort -gk 3
Команда простофили разделяет 3-е поле (размер изображения, который имеет формат LxH) в массив "размеры", и затем печатает 1-е поле (название картинки) и результат деления длины изображения ее высотой. sed
команда просто украшает вывод и sort
команда сортирует результат согласно отношению размера изображения.
Более сложный, этот может иметь дело с пробелами в именах файлов:
find . \( -iname "*png" -o -iname "*jpg" -o -iname "*gif" \) -exec identify {} \; |\
perl -ne '/(.+?)\s+[A-Z]{3}\s+(\d+)x(\d+)/; print "$1 ", $2/$3, "\n"' | \
sort -gk 2
Здесь мы используем find
для идентификации файлов, мы интересуемся и выполнены identify
команда и затем передача по каналу ее вывода через небольшой сценарий Perl. Регулярное выражение ищет три прописных буквы ([A-Z]{3}
) который должен быть форматом изображения. После того как мы нашли, что, легко определить название картинки и размеры.
Я не использую простофилю здесь, потому что присутствие пробелов во входных именах файлов перепутает полевые числа. Наконец, сценарий распечатает название изображения и результат подразделения длины/высоты который мы sort
численно.
Просто просматривание доступных соотношений сторон недостаточно, если у Вас есть по крайней мере одно изображение с желаемым соотношением сторон, просто используйте grep для извлечения тех изображений, отношение которых является самым близким:
identify *png *jpg *gif | \
gawk '{split($3,sizes,"x"); print $1,sizes[1]/sizes[2]}' |\
sed 's/\[.\]//' | sort -gk 3 | grep -C 10 GOOD_IMAGE.jpg
Используя N.N.'s ImageMagick комментируют как вывод, оказывается, что у Вас может быть он, делают произвольные вычисления как часть -format
вывод. Так, один возможный путь:
identify -format "%[fx:round(100000*abs((4/3)-(w/h)))]:%M\n" *.jpg | \
sort -n -k1 -t:
должен сделать то, что Вы хотите. Обратите внимание, что 4/3 там является константой, желаемым соотношением сторон. Вы могли, конечно, найти что как вывод предыдущего identify
(к соответствиям, "самым близким к этому изображению").
Для объяснения мы берем простое различие между желаемой и фактической порцией аспекта. Затем умножаясь большим количеством и округлением. Умножение и вокруг состоит в том, потому что вид только обрабатывает целые числа, не rationals.
Это складывается sort
кажется, делает rationals, не просто целые числа. Его даже указанный к в Единственной Спецификации (v4) Unix. Так, можно избавиться от того обходного решения:
identify -format "%[fx:abs((4/3)-(w/h))]:%M\n" *.jpg | \
sort -n -k1 -t:
33333:cover.jpg
где cover.jpg 500x500.
– terdon♦
08.10.2012, 20:58
Соотношение сторон является просто числом, таким образом, можно просмотреть изображения согласно их именам, если имя снабжается префиксом соотношение сторон. Создание символьных ссылок с предварительно ожидаемым соотношением сторон позволяет Вам просматривать изображения, отсортированные по соотношению сторон.
Следующие средства просмотра работают как ожидалось. (feh не передает/поддерживает, даже для реальных изображений - в моей системе),
picd='/media/dat_ext4/pictures/jpg/misc'
srtd="$picd/ar-sort" # directory to hold "sorted" symbolic links
mkdir -p "$srtd"
find "$picd" -maxdepth 1 -type f -name "*" -print0 |
while IFS= read -d $'\0' -r file ; do
[[ $(file -ib "$file") != image* ]] && continue # skip non-image files
ar="$(identify -format "%[fx:w/h]" "$file")"
slink="$(printf '%s/%06.4f %s' "$srtd" "$ar" "$(basename "$file")")"
# make symbolic link in 'ar-sort' directory
ln -s "$file" "$slink"
echo "$slink"
done
Войдите ar-sort
каталог и просто просматривает от любой начальной точки (соотношение сторон), Вы интересуетесь.
Имена символьной ссылки похожи на это:
0.6732 Gold Bars.jpg
0.7242 Light Bulb.jpg
0.8022 Escher - Waterfall.jpg
1.3696 Old Typewriter.jpg
1.6000 King Tut.jpg
Можно вычислить различие каждого соотношения сторон со ссылкой. Похож на ответ derobert, но более простой:
ref=4/3
identify -format "%[fx:abs(w/h - $ref)] %M\n" *.jpg | sort -n -k1
Моя обычная цепь рассуждений состоит в том, чтобы использовать ошибочную метрику расстояния в квадрате везде, где я слышу слова "степень близости". Можно, конечно, использовать абсолютные значения, и это было бы быстрее. Сценарий берет в качестве аргумента идеальное соотношение сторон, обрабатывает все *.jpg файлы в текущем каталоге и выводах их отсортированный в увеличивающемся порядке расхождения от идеального отношения.
head
удаляет запаздывание символа конца строки, вставленного ImageMagick.
Сценарий содержит команду простофили, которая устанавливает выходного разделителя полей на маловероятный символ, вычисляет различие в квадрате и печатает назад пару difference|file имя. Вид выполняется, и ненужная информация (различие в соотношении сторон в квадрате) отобрана cut
.
#!/bin/sh
if [ x"$1" = "x" ] ; then
echo "Usage: $0 TargetAspectRatio" >&2
exit 2
fi
ASPECT_CMD="BEGIN{OFS=\"|\";}\
{\
print (\$1-$1)^2, \$2;\
}"
identify -format "%[fx:w/h]:%M\n" *.jpg | head -n-1 | gawk -F":" "$ASPECT_CMD" | sort -k1 -t"|" | cut -f2 -d"|"