#1 Le 23/12/2016, à 23:33
- alex2423
récupérer le résultat d'une commande et l'exploiter avec un ls -l
Hello tout le monde,
J'étais en train de regarder ou se trouvait tous mes favoris sur mon posts.
J'ai donc fais un :
locate -r places.sqlite$
c'est parfait mais maintenant j'aimerai bien piper ce résultat de commande et utiliser la commande ls -l pour connaitre la date de dernière modification de mes bookmars sur tout mon PC.
Je pensais utilisais tee mais en fait cette commande renvoie le résultat sur la sortie standard (le terminal) et dans un fichier. Ce n'est pas ce que je recherche.
COmment puis je faire
Hors ligne
#2 Le 23/12/2016, à 23:50
- Laurent85
Re : récupérer le résultat d'une commande et l'exploiter avec un ls -l
Une solution :
ls -l $(locate -r places.sqlite$)
Hors ligne
#3 Le 24/12/2016, à 00:03
- alex2423
Re : récupérer le résultat d'une commande et l'exploiter avec un ls -l
pas mal ! Je n'y avais pas pensé. Dans ce cas, on peut aussi utiliser les ` mais solution moins élégante que la tienne.
Hors ligne
#4 Le 24/12/2016, à 00:04
- Watael
Re : récupérer le résultat d'une commande et l'exploiter avec un ls -l
locate parcourt une base de données qui n'est pas forcément à jour.
si un nom de répertoire contient un espace ls va échoué.
find ~ -name places.sqlite -exec stat -c '%y --- %Y' {} \;
Connected \o/
Welcome to sHell. · eval is evil.
Hors ligne
#5 Le 24/12/2016, à 00:14
- alex2423
Re : récupérer le résultat d'une commande et l'exploiter avec un ls -l
Watael, je suis jalou que ton post apparaisse en premier alors que l'on a posté tous les 2 à 00:03.
Et il est bien entendu que je fais un :
sudo updatedb
je pense qu'il faut utiliser l'expression régulière parce que cela retournera trop de résultat comme j'étais confronté avec locate.
Le problème de ta commande Watael est qu'elle ne reporte pas le nom du fichier. J'obtiens que des dates de dernières modifications sans association avec un fichier.
PS : bizzare, l'heure de ton post a changé à 00:04 et je suis passé en premier
Dernière modification par alex2423 (Le 24/12/2016, à 00:15)
Hors ligne
#6 Le 24/12/2016, à 01:35
- Watael
Re : récupérer le résultat d'une commande et l'exploiter avec un ls -l
pas de problème, hop, hop, hop, un coup d'œil à la page man de stat find, et...
tada :
find ~ -name places.sqlite -printf '%Cc --- %C@ -- %p'
ici, find reportera les informations concernant les fichiers qui se nomment exactement places.sqlite
en bash, et avec stat :
shopt -s globstar nullglob
stat -c '%y --- %Y -- %n' ~/**/places.sqlite
Dernière modification par Watael (Le 24/12/2016, à 01:38)
Connected \o/
Welcome to sHell. · eval is evil.
Hors ligne