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/04/2016, à 09:54

compte banni et supprimé

[Résolu] Demande d'explication commande bash dans find

Bonjour,

depuis quelques temps je cherchais une commande spécifique que j'ai obtenu grâce à cqfd93 lorsqu'elle aidait une personne

ce pendant je ne comprend pas bien cette commande, plus particulièrement le bash -c
La commande "find" je connais et je m'en utilise souvent mais lié à "bash", mystère, même la suite ne s'écrit plus pareil (mise à part le "\;" à la fin)
Si quelqu'un pourrait m'apporter une petite explication

find /etc/apt -name '*.list' -exec bash -c 'echo -e "\n$1\n"; nl -ba "$1"' _ '{}' \; 

Merci à toutes personnes qui m'apporter un début de réponse

Dernière modification par philanthrope (Le 24/04/2016, à 10:49)

#2 Le 24/04/2016, à 10:15

Postmortem

Re : [Résolu] Demande d'explication commande bash dans find

Salut,

bash -c 'echo -e "\n$1\n"; nl -ba "$1"' _ toto.list

"bash -c" sert à exécuter la commande en argument du -c, ici, tout ce qui est entre les simples quotes.
Dans cette commande, $0 est remplacé par le 1er argument qui suit (ici c'est "_"), $1 est remplacé par le 2ème argument (ici, "toto.list") etc...
Donc ici, c'est comme si tu avais exécuté directement dans le terminal :

echo -e "\ntoto.list\n"; nl -ba "toto.list"

Et donc, couplé au find, ça exécute la commande pour tous les fichiers *.list.


Mot' a dit : « Un Hellfest sans Slayer, c'est comme une galette-saucisse sans saucisse ! »

Hors ligne

#3 Le 24/04/2016, à 10:48

compte banni et supprimé

Re : [Résolu] Demande d'explication commande bash dans find

Ok, avec un peu de réflexion je crois que ça marche
Merci wink