Antworten:
Was Sie wirklich wollen, ist die erste Datei einer nicht umgekehrten zeitbasierten Liste.
ls -t | head -1
Das -r ist für Menschen, weil wir das Letzte auf dem Bildschirm wollen, das vorbeigefahren ist, und nicht das Erste. Wenn die Maschine es herausfindet, kann sie genauso gut head
nach der ersten verwenden und anhalten, anstatt tail
die Liste durchlaufen zu haben.
Mit zsh:
gnome-open *.jpg(om[1])
Das Glob-Qualifikationsspiel (om)
sortiert die Spiele nach zunehmendem Alter (dh in antichronologischer Reihenfolge). Das Glob-Qualifikationsmerkmal ([1])
wählt nur die erste Übereinstimmung aus. Sie können *.jpg(om[1,4])
damit die 4 neuesten Dateien öffnen und so weiter.
In anderen Schalen:
gnome-open "$(\ls -t *.jpg | head -1)"
Beachten Sie jedoch, dass nicht druckbare Zeichen oder Bytes in Ihren Dateinamen (was normalerweise der Fall ist, wenn Sie Dateinamen in einem anderen Zeichensatz als Ihrem Gebietsschema haben) ls
durch diese ersetzt werden ?
, sodass dies nicht funktioniert.
open
anstelle vongnome-open