Feh

Aus mxlinuxusers.de
Version vom 19. Februar 2022, 23:19 Uhr von Gosian (Diskussion | Beiträge) (Option --action ergänzt)

feh ist ein leichtgewichtiger Bildbetrachter, der sich auch gut zum Setzen von Hintergrundbildern (Wallpaper) eignet. Wer sich nur dafür interessiert, sollte den vorigen Link aufrufen. Hier werden die Optionen für feh als Bildbetrachter behandelt.

feh wird über die Kommandozeile gesteuert und unterstützt eine Vielzahl von Bildformaten. Er ermöglicht Diashows und das durchsuchen von Verzeichnissen, um Vorschaubilder (Thumbnails) von darin enthaltenen Grafiken zu erzeugen. Diese können als Index-Ausdrucke mit den Dateiinfos angezeigt werden.

Weitere Funktionen sind schnelles dynamisches Zoomen, progressives Laden, Laden via HTTP (mit Aktualisierungsmöglichkeit für Webcams), rekursive Dateiöffnung (Diashow einer Verzeichnishierarchie), Mausrad-/Tastatur-Unterstützung sowie die Möglichkeit, Bashkommandos bzw. Skripte einzubinden, um beliebige Aktionen mit den Bilddateien auszulösen.

Diashow

Wird feh ohne Option nur mit einem Verzeichnisnamen und/oder Dateinamen bzw. Dateimustern aufgerufen

feh Bilder/*.jpg

so wird in einem neuen Fenster der Reihe nach alle gefundenen Bilder angezeigt. Durch Drücken der Leertaste bzw. der linken Maustaste wird das nächste Bild angezeigt. Mit der rechten Maustaste erreicht man ein Kontextmenu, in dem u.a. Infos zum jeweiligen Bild angezeigt werden können.

Optionen

feh im Thumbnail-Modus
feh im Thumbnail-Modus
  • -m # startet den sogenannten "Montage-Modus", in dem ein neues Bild erzeugt wird, dass alle vorhandenen Bilder als Thumbnails enthält.
  • -i # "Index-Modus", ähnlich wie der Montage-Modus, unter jedem Thumbnail wird jedoch zusätzlich der Dateiname angezeigt
  • -t # "Thumbnail-Modus", gleiche Anzeige wie beim Index-Modus, die Thumbnails können aber angeklickt werden (linke Maustaste) und erscheinen dann in einem zusätzlichen Fenster in Originalgrösse
  • -w # "Multiwindow-Modus". Alle gefundenen Bilder werden in eigenen Fenstern in Originalgrösse angezeigt. Macht nur bei wenigen Bildern Sinn und sollte auch nur bei Tiling Window-Managern benutzt werden, da sonst bei ca. mehr als 10-15 Bildern der Bildschirm regelrecht "überflutet" wird, die dann alle einzeln mühsam wieder geschlossen werden müssen.
  • -l # "Listenmodus". Zeigt keine Bilder sondern eine tabellarische Übersicht der gefundenen Bilddateien mit zugehörigen Werten an:
feh -l ~/Bilder
NUM	FORMAT	WIDTH	HEIGHT	PIXELS	SIZE	ALPHA	FILENAME
1	jpeg	1080	1080	  1M	299k	-	/home/gn/Bilder/21245766070_6390ce7169_o.jpg
2	jpeg	640	435	278k	 56k	-	/home/gn/Bilder/2367114417_9bbea10e67_z.jpg
3	jpeg	1280	724	926k	 77k	-	/home/gn/Bilder/Beatles.jpg
4	jpeg	960	768	737k	178k	-	/home/gn/Bilder/Cat_in_Snow.jpg
5	jpeg	1219	768	936k	103k	-	/home/gn/Bilder/Louis_Wain_-_Katzenklub.jpg
6	jpeg	530	353	187k	 35k	-	/home/gn/Bilder/SOMC_21.jpg
7	jpeg	1400	787	  1M	341k	-	/home/gn/Bilder/agFz_aS911Oncxuiy2WdHQ.jpg
8	jpeg	100	100	 10k	 21k	-	/home/gn/Bilder/avatar_n.jpg
9	jpeg	1920	860	  1M	227k	-	/home/gn/Bilder/calomel_image2.jpg
10	png	96	96	  9k	 13k	X	/home/gn/Bilder/cat118.png
11	png	256	256	 65k	 65k	X	/home/gn/Bilder/cat131.png
12	jpeg	1280	724	926k	 43k	-	/home/gn/Bilder/feh_022761_000001_Beatles.jpg
Optionen
Option zusätzlich Bedeutung
-A flag Nach der Option -A bzw. --action wird ein Shell-Befehl angegeben, der ausgeführt werden soll. Im Diashow- oder Mehrfenstermodus wird die Aktion ausgeführt, wenn die Taste action_0 gedrückt wird, im Listenmodus wird sie für jede Datei ausgeführt. Im Modus "Ladbar" (loadable) bzw. "Nicht ladbar" (unloadable) wird sie für jede ladbare bzw. nicht ladbare Datei ausgeführt. Im Thumbnail-Modus wird beim Anklicken eines Bildes die Aktion ausgeführt, anstatt das Bild zu öffnen.

Wenn als Flag ";" gesetzt ist, lädt feh nach der Ausführung der Aktion das aktuelle Bild neu, anstatt zum nächsten Bild zu wechseln (Diashow-Modus) oder das Fenster zu schließen (Mehrfenster-Modus).

Die Aktion wird von /bin/sh ausgeführt.

--auto-rotate rotiert das Bild automatisch entsprechend den EXIF Daten
-Z zoomt die Bilderansicht auf Bildschirmgröße (im Vollbildmodus). Die Grössenverhältnisse der Bilder bleibt erhalten
-x Randlose Fenster erstellen
--cache-size GROESSE setzt den Bildercache auf die angegebene GROESSE (in MiB), mögliche Werte sind 0 bis 2048, default ist 4
-P Thumbnail caching einschalten. Per default werden Thumbnails in ~/.cache/thumbnails gespeichert, jedoch nur wenn sie nicht grösser als 256x256 Pixel sind
-K PATH Pfad zum Verzeichnis mit den Bildunterschriften. Wenn die Bildunterschriften im Pfad gefunden werden, der relativ zum Verzeichnis des jeweiligen Bildes ist, werden sie auf dem angezeigten Bild eingeblendet. Wenn z. B. der Pfad für die Bildunterschrift "captions/" lautet und das Bild "images/foo.jpg" angezeigt wird, wird die Bildunterschrift in "images/captions/foo.jpg.txt" gesucht.
--conversion-timeout timeout feh kann mit ImageMagick versuchen, nicht ladbare Dateien in ein unterstütztes Dateiformat zu konvertieren. Da dies sehr lange dauern kann, ist es standardmäßig deaktiviert. Setzen von timeout auf einen nicht-negativen Wert aktiviert den Konvertierungsversuch. Ein positiver Wert gibt an, nach wie vielen Sekunden Konvertierungsversuche abgebrochen werden sollen, Null bewirkt, dass feh es unbegrenzt versucht. Negative Werte schalten die default-mässige Deaktivierung wieder ein.
--draw-exif zeigt in der linken unteren Ecke EXIF Informationen an (wenn vorhanden). Diese Option ist nicht in allen Versionen von feh vorhanden
-d zeigt in der linken oberen Ecke den Dateinamen
--edit schaltet minimale Bearbeitungsmöglichkeiten der Bilddatei mit der Tastatur ein. Per default folgende Tasten:
  • < (Rotation um 90 Grad nach links)
  • > (Rotation um 90 Grad nach rechts)
  • | (Spiegelung um die linke Bildkante)
  • – Unterstrich, nicht Minus! (Spiegelung um die obere Bildkante)

Achtung, Veränderungen werden tatsächlich an der Datei vorgenommen, nicht nur an der Anzeige

-f DATEI existiert DATEI und enthält eine Liste von Dateinamen (eine Zeile pro Datei) so werden die aufgelisteten Dateien der Reihe nach angezeigt. Existiert die DATEI nicht, so wird sie am Ende von feh erzeugt und mit den Namen der angezeigten Bilder gefüllt. Nützlich u.a. zur Weiterverarbeitung mit Skripten
-e FONT setzt für feh den global verwendeten Font. Der Font muss ein Truetype-Font sein und entweder im aktuellen Verzeichnis oder in den offiziellen Fontverzeichnissen vorhanden sein. FONT hat die Form Fontname/Points, z.B. DejaVuSans/12
-C PFAD PFAD ist der Name eines zusätzlichen Verzeichnisses, in den mit der Option -e nach Fonts gesucht werden soll. Kann mehrfach für verschiedene Verzeichnisse angegeben werden
-M FONT benutzter Font für das Menu mit der Grösse z.B. "yudit/12"
--force-aliasing schaltet anti-aliasing für zooming, Backgrund usw. aus
-F Vollbildmodus einschalten. In diesem Modus werden große Bilder immer verkleinert, damit sie auf den Bildschirm passen. Die Option --zoom zoom wirkt sich dabei nur auf kleinere Bilder aus die nie größer als nötig skaliert werden, um die Bildschirmgröße zu erreichen. Die einzige Ausnahme ist ein Zoom von 100, in diesem Fall werden die Bilder immer mit 100% Zoom angezeigt.
-g BREITE x HÖHE +x+y benutzt eine feste Grösse für das Anzeigefenster. Angabe erfolgt im X-Style, z.B. 640x480. Mit der zusätzlichen Option +x+y kann der Abstand vom linken (+x) und vom oberen Rand (+y) festgelegt werden. Diese zusätzliche Option muss ohne Abstand nach BREITE x HÖHE erfolgen. Z.B. 800x640+100+20
-Y Anzeige ohne Pointer
-B STYLE STYLE als Hintergrund für transparente Bildteile und Ähnliches verwenden. Akzeptierte Werte:
  • default (Im Fenstermodus = checks, im Vollbildmodus = black, dort ist checks nicht erlaubt)
  • checks (karierter Hintergrund)
  • XColor-Wert, z.B. "black" oder "#428bdd"
--keep-zoom-vp Behält beim Wechseln von Bildern die Zoom- und Ansichtsfenstereinstellungen bei (Zoomstufe und X-, Y-Versatz)
-U zeigt keine Bilder an, sondern gibt eine Liste der Dateinamen aus. Wenn nur ein Bild (oder mehrere) nicht anzeigbar sind, gibt der Exit-Code 1 (= false) aus, sonst 0 (= true). Nützlich für Skripte. s.a. die Option -l
-N zeige kein Menu an
--no-screen-clip Standardmäßig sind die Fenstergrößen auf die Bildschirmgröße beschränkt. Mit dieser Option haben die Fenster die Größe des Bildes, das sie enthalten. Auf diese Weise können sie sehr groß werden können, so dass sie in bestimmten Fenstermanagern nicht mehr verwaltet werden können.
-p Bilder vorher laden. Das bedeutet nicht, dass Sie im RAM gehalten werden, sondern dass nicht ladbare Bilder zuerst entfernt werden. Andernfalls werden sie beim Durchblättern entfernt. Dabei werden die Bilder auch analysiert, um Daten für die Sortierung zu erhalten, z. B. Pixelgröße, Typ usw. Wenn einer dieser Sortiermodi festlegen wurde, wird automatisch ein Vorladevorgang durchgeführt.
-v Ausgabe nützlicher Informationen, Fortschrittsbalken usw. (verbose-Modus)
-q Bei fehlgeschlagenen Ladevorgängen werden keine nicht-fatalen Fehler gemeldet. Die Modi -v "Verbose" und -q ("Quiet") schließen sich nicht gegenseitig aus. Der erste Modus steuert Informationsmeldungen, der zweite nur Fehler
-z Werden mehrere Dateien in einer Diashow angezeigt, so wird die Bilder in zufälliger Reihenfolge angezeigt. Bei jedem neuen Zyklus (d. h. vom Übergang vom letzten zum ersten Bild) wird eine neue zufällige Reihenfolge erzeugt

Beispiele

Beispiele
Kommando Bedeutung
feh ~/Bilder zeigt alle Bilder aus dem Verzeichnis ~/Bilder
feh -r ~/Bilder zeigt alle Bilder die im Verzeichnis ~/Bilder und in den darin enthaltenen Unterordnern liegen (rekursiv)
feh -t -Sfilename -E 128 -y 128 -W 1024 ~/Bilder 128x128 Pixel große Thumbnails anzeigen, Fensterbreite auf 1024 Pixel begrenzen. Durch die Option -Sfilename werden die Thumbnails "natürlich" sortiert. Standardmäßig zeigt feh die Dateien in der Reihenfolge ihrer Namen an, d.h. z.B. "foo 10.jpg" kommt vor "foo 2.jpg". In diesem Fall werden sie stattdessen so sortiert, wie es ein Mensch erwarten würde.
feh -t -Sfilename -E 128 -y 128 -W 1024 -P -C /usr/share/fonts/truetype/ttf-dejavu/ -e DejaVuSans/8 ~/Bilder wie oben, aber es wird die Zwischenspeicherung von Miniaturansichten aktiviert und eine kleinere Schrift (DejaVuSans, 8 Punkt) verwendet
feh -irFarial/14 -O index.jpg ~/Bilder Erstellt einen Indexausdruck von ~/Bilder und allen darunter liegenden Verzeichnissen. Verwendet 14 Punkt Arial, um die Bildinformationen unter jedes Thumbnail zu schreiben. Der Indexausdruck wird als Bild index.jpg im aktuellen Verzeichnis gespeichert. Er wird nicht angezeigt, sondern feh beendet sich. Dadurch ist es möglich, dies auch ohne einen laufenden X-Server durchzuführen (in einer reinen Konsole)
feh --unloadable -r ~/Bilder zeigt die Namen aller Dateien in ~/Bilder und allen darunter liegenden Verzeichnissen an, die nicht geladen und damit auch nicht angezeigt werden können
feh -f by_width -S width --reverse --list . schreibt einer Liste aller Bilder im Verzeichnis, sortiert nach Breite (die breitesten Bilder zuerst)
feh -w ~/Bilder öffnet für jedes Bild im Verzeichnis ~/Bilder ein eigenes Anzeigefenster. Vorsicht: führt bei vielen Dateien auch zu entsprechend vielen geöffneten Fenstern, die dann den Bildschirm überschwemmen
feh -FD5 -Sname ~/Bilder zeigt die Bilder im Verzeichnis ~/Bilder als Diashow im Vollbildmodus. Die Reihenfolge erfolgt alphabetisch nach dem Namen, Bildwechsel aller 5 Sekunden
feh -rSwidth -A "mv %F ~/images/%N" ~/Bilder Anzeige aller Bilder in ~/Bilder und darunter, sortiert nach Breite, Verschieben eines Bildes nach ~/image/image_name, wenn Enter gedrückt wird
feh --start-at ~/Bilder/foo.jpg zeigt die Bilder im Verzeichnis ~/Bilder, beginnt aber mit der Datei foo.jpg. Alle anderen Bilder befinden sich weiterhin in der Diashow und können normal angezeigt werden
DateTimeOriginal|FNumber|ISO|Flash)' %F | cut -d . -f 4-" . zeigt die Bilder im aktuellen Verzeichnis mit ihren EXIF-Daten (falls vorhanden) an. exifprobe/exifgrep muss dazu installiert sein
feh --action 'rm %F' -rl --max-dimension 1000x800 löscht alle Bilder mit Abmessungen kleiner oder gleich 1000x800 Pixel aus dem aktuellen Verzeichnis und allen darunterliegenden Verzeichnissen (rekursiv)
awk '{ if ($1 > $2) { print $0 } }' | cut -d ' ' -f 3- | feh -f - zeigt alle Bilder im Verzeichnis, die breiter als höher sind

Weblinks

Feh: Der Bildbetrachter für Ihr Terminal