Exécuter un programme sur le résultat d'une commande

Résolu/Fermé
Swiss Knight Messages postés 1956 Date d'inscription samedi 22 novembre 2008 Statut Membre Dernière intervention 27 juillet 2016 - 18 oct. 2013 à 19:10
Swiss Knight Messages postés 1956 Date d'inscription samedi 22 novembre 2008 Statut Membre Dernière intervention 27 juillet 2016 - 19 oct. 2013 à 18:43
Salut,

afin de ne pas devoir ouvrir le dossier de manière graphique (à cause de mon vieux pc) pour regarder les photos d'un jour donné, je lance la commande suivante, par exemple pour 18 octobre :
ls -larth "/media/photos/" | grep -i "oct 18.*.jpg" | head -n1 | awk '{print $9}' 
Qui me donne le nom du fichier sur une ligne, par exemple :
DSC_2919.jpg

Je souhaite ouvrir ce fichier avec eog. Mais pour l'instant je suis obligé de lancer une seconde commande :
eog /media/photos/DSC_2919.jpg


J'aimerai bien le faire en une seule commande, c'est-à-dire en rajoutant un pipe ou je sais pas trop quoi à la fin de la première commande... J'ai essayé de rajouter ça : -exec eog {} \;

mais ça me plante la console...


Merci !

2 réponses

zipe31 Messages postés 36402 Date d'inscription dimanche 7 novembre 2010 Statut Contributeur Dernière intervention 27 janvier 2021 6 407
18 oct. 2013 à 19:25
Salut,

eog /media/photos/$(ls -lrt "/media/photos/" | grep -i "oct 18.*.jpg" | head -n1 | awk '{print $9}')
1
Swiss Knight Messages postés 1956 Date d'inscription samedi 22 novembre 2008 Statut Membre Dernière intervention 27 juillet 2016 110
19 oct. 2013 à 18:42
Fonctionne nickel merci !
0
bonjour,

grrr
eog "$(stat -c '%x@@%n' /media/photo/* |\
awk -F'@@' '{split($1,a,"[[:blank:]]");if(a[1] ~ "10-18$")print $2;exit}')"
display est peut-être plus léger que eog.
0
Swiss Knight Messages postés 1956 Date d'inscription samedi 22 novembre 2008 Statut Membre Dernière intervention 27 juillet 2016 110
19 oct. 2013 à 18:43
Pas testé, mais je ne vois nul part la date du jour comme écrite ci-dessus dans ta commande ?!
0