Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 24/12/2016, à 00: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 24/12/2016, à 00: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, à 01: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, à 01: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, à 01: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. mad
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 lol

Dernière modification par alex2423 (Le 24/12/2016, à 01:15)

Hors ligne

#6 Le 24/12/2016, à 02: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, à 02:38)


Connected \o/
Welcome to sHell. · eval is evil.

Hors ligne