Відповіді:
ImageMagick's display
.
display < foo.png
На Linux (і, ймовірно, на BSD), майже всі вони - якщо ви дасте /dev/stdin
як шлях. Це включає в себе: xloadimage
, feh
, Око GNOME ( eog
).
eog /dev/stdin < "$file"
(Однак, не всі вони добре працюють із спеціальними файлами. Наприклад, GThumb провалив тест.)
< "$file"
був приклад. Справа полягала в тому, чи може програма приймати довільний потік, будь то просте перенаправлення чи щось більш вдосконалене (наприклад, надання зображення через stdin, іменовану трубу, заміну процесу, сокет або символьний пристрій). Проблема полягає в тому, що багато глядачів вимагають, щоб fd був доступним, а це лише звичайні файли та блокові пристрої.
cat graph.png | eog /dev/stdin
не вдається, але eog /dev/stdin < graph.png
працює.
|
)?
eog
це пошук інформації в дескрипторі файлів (що досягає успіху в особливому випадку, коли він був перенаправлений безпосередньо з файлу), тоді як звичайні програми Unix просто приймуть вхід, незалежно від того, звідки він надходить. Так що eog
не буде працювати для загального stdin. Інша програма, яка працює gwenview /dev/stdin
(переглядач зображень KDE).
FIFO може працювати з eog
відсутністю підтримки труб:
mkfifo ${tmpfilename};
cat ${file} > ${tmpfilename} &;
eog /dev/stdin < ${tmpfilename};
rm ${tmpfilename};
AFAIK це має працювати.
Ви можете використовувати feh, це досить швидко.
cat image.png | feh --scale-down -
feh - це легкий переглядач зображень, який знаходиться в сховищах за замовчуванням багатьох дистрибутивів Linux. Він особливо спрямований на користувачів командного рядка, які потребують швидкого перегляду зображень без величезних залежностей від графічного інтерфейсу.
ImageMagick 6.8.8-1 Q16 i686 2014-01-04
мені також потрібно передати-
як параметр:$ cat image.png | display -
або$ display - < image.png
.