|
Publicité ' | ||||||||||||||||||||||||
|
|
#1 | |
|
Membre confirmé
![]() ![]() Inscription : mars 2003 Messages : 1 043 ![]() |
Bonjour à tous,
Je souhaiterais rechercher une ligne particulière dans tous les fichiers du serveur. Cette ligne est du genre : Citation:
Quelle serait la bonne méthode ? Peut-être pas GREP ? Une autre option ? Merci de vos lumières. |
|
|
|
10
|
|
|
#2 | ||
|
Membre Expert
![]() Frédéric Brugmans Informaticien multitâche Inscription : février 2005 Messages : 661 ![]() |
Code :
|
||
|
|
20
|
|
|
#3 | |||
|
Membre confirmé
![]() ![]() Inscription : mars 2003 Messages : 1 043 ![]() |
Bonsoir et merci de ta réponse,
Comme je suis débutant, peux tu me préciser : Citation:
Ce qui donnerait, pour mon exemple : Code :
|
|||
|
|
10
|
|
|
#4 |
|
Membre actif
![]() Inscription : août 2011 Messages : 44 ![]() |
bonsoir,
Code :
grep -lR '/usr/lib64/extensions/no-debug-non-zts-20060613/ssh2.so' / 2>/dev/null |
|
|
20
|
|
|
#5 |
|
Membre confirmé
![]() ![]() Inscription : mars 2003 Messages : 1 043 ![]() |
Bonsoir, merci de ton passage.
Ton expression est différente. Du coup... ![]() Je suis un peu paumé. Je la teste. C'est sans danger pour le serveur ? |
|
|
10
|
|
|
#6 |
|
Expert Confirmé Sénior
![]() francois Ingénieur systèmes et réseaux Inscription : juillet 2006 Messages : 3 538 ![]() |
grep ne fait que "lire" du contenu et l'afficher il ne modifie rien.
|
|
|
00
|
|
|
#7 | |
|
Membre confirmé
![]() ![]() Inscription : mars 2003 Messages : 1 043 ![]() |
Bonjour,
Ok merci, c'est rassurant. J'ai donc, hier soir, testé : Citation:
Normal ou étrange? |
|
|
|
10
|
|
|
#8 | |
|
Membre actif
![]() Inscription : août 2011 Messages : 44 ![]() |
Bonjour,
Citation:
A toi de cibler ta recherche... |
|
|
|
20
|
|
|
#9 |
|
Membre confirmé
![]() ![]() Inscription : mars 2003 Messages : 1 043 ![]() |
Bonjour,
Euh...jour N° 2 et la console affiche toujours la même chose : le curseur est bloqué sous la ligne de commande et rien ne se passe. Je ne vois pas défiler de lignes, façon "scanner", il ne se passe rien. Mais ça fait maintenant 36 heures... Il y a tant que ça de fichiers à passer au crible ? Cibler, je ne peux pas plus, j'ignore complètement où se trouve ce fichier. Mais est-ce que la commande est correcte ? On dirait quand même que ça patine un peu. Merci de vos conseils. |
|
|
10
|
|
|
#10 | ||
|
Expert Confirmé Sénior
![]() Frédéric Ingénieur développement logiciels Inscription : février 2006 Messages : 3 055 ![]() |
Salut
Aucune action que tu peux faire n'est dangereuse pour le serveur (ou pour toute machine Unix) si 1) les droits ont bien été positionnés (ou simplement pas été ouverts par rapport aux droits mis par défaut) 2) si tu prends soin de ne jamais bosser sous root (devenir root ponctuellement pour un besoin précis oui, mais pas bosser de façon généralisée sous root) becket a utilisé un mix de 2 commandes Code :
find /chemin-type f -exec grep -l LIGNERECHERCHEE {} \; 2> /dev/null 2) chaque fichier trouvé sera passé via "-exec" à la commande "grep" qui cherchera "lignecherchée" dans le fichier trouvé par find, fichier symbolisé par les accolades {}. Pour que find sache où s'arrête la commande "grep", il faut la terminer par un point-virgule mais ce point-virgule ne doit pas être intercepté par ton interpréteur shell donc on le protège par un backslash. Et enfin il se peut que tu n'aies pas accès à toute l'arborescence (cause droits). Dans ce cas, find n'y a pas accès non plus et te renvoie un message disant qu'il ne peut pas y accéder, ce message transitant par le canal des erreurs n° 2. Pour ne pas que ce message te gêne, on le redirige dans /dev/null chardclo utilise une commande grep un peu plus élaborée Code :
grep -lR '/usr/lib64/extensions/no-debug-non-zts-20060613/ssh2.so' / 2>/dev/null Certaines commandes ont été en effet reprises pour faire un peu plus que les commandes d'origine. La syntaxe de becket est une syntaxe généraliste, très dans le principe Unix qui dit qu'une commande ne fait qu'un travail mais le fait bien et c'est en les mixant ou les reliant plusieurs commandes les unes aux autres qu'on peut faire des traitements complexe. Cette syntaxe marchera sur tous les Unix du monde quel que soit ton besoin. La syntaxe de chardclo est une syntaxe utilisant certaines commandes souvent utilisées dans certaines configuration qui ont alors été optimisées pour pouvoir intégrer elles-mêmes la configuration en question sans passer par une autre commande préalable. Ca ne marchera que dans des cas très spécifiques (sur les Unix récents pour une configuration précise) Citation:
A moins que grep -R sache éviter les pipes et dans ce cas mon hypothèse n'est pas bonne (je ne connais pas les détails de l'option "-R"). Mais tu devrais essayer la syntaxe de becket pour voir car avec la sienne, en ne demandant que les fichiers de type f, tu es sûr de ne pas choper les fichiers de type p... Si tu mets /root ta recherche ne débutera qu'à partir de /root. Si tu veux une recherche sur toute l'arborescence, il faut mettre la base de l'arborescence donc "/" Unix est un système de professionnels et non une série grand guignolesque à la façon des experts Miami. Il ne t'affiche que les infos que tu demandes et les infos d'échec... Citation:
__________________
Vous ne pouvez pas apporter la prospérité au pauvre en la retirant au riche. Tout ce qu'un individu reçoit sans rien faire pour l'obtenir, un autre individu a dû travailler pour le produire sans en tirer profit. Tout Pouvoir ne peut distribuer aux uns que ce qu'il a préalablement confisqué à d'autres car on n'accroît pas les biens en les divisant. Quand la moitié d'un peuple croit qu'il ne sert à rien de faire des efforts car l'autre moitié les fera pour elle, et quand cette dernière moitié se dit qu'il ne sert à rien d'en faire car ils bénéficieront à d'autres, cela s'appelle le déclin et la fin d'une nation. Dr. Adrian Rogers, 1931 |
||
|
|
10
|
|
|
#11 | ||
|
Membre confirmé
![]() ![]() Inscription : mars 2003 Messages : 1 043 ![]() |
Bonjour et merci beaucoup pour ton explication claire et détaillée.
J'ai donc lancé une recherche avec la commande de becket, on va bien voir. Par contre : Citation:
En fait, le but de ma recherche, c'est que j'ai installé ssh2 avant hier et depuis, tous les matins, je reçois des emails du système (depuis Watchdog Plesk) : Citation:
Enfin je crois... Parce que ce sont vraiment mes tous premiers pas dans le monde de Linux... |
||
|
|
10
|
|
|
#12 | |||||
|
Expert Confirmé Sénior
![]() Frédéric Ingénieur développement logiciels Inscription : février 2006 Messages : 3 055 ![]() |
Citation:
Tu te crées un compte "renaud26" qui sera comme tout le monde et tu te logues sous ce compte. Et si t'as besoin d'exécuter une action précise en tant que root, alors tu tapes Code :
Citation:
Citation:
__________________
Vous ne pouvez pas apporter la prospérité au pauvre en la retirant au riche. Tout ce qu'un individu reçoit sans rien faire pour l'obtenir, un autre individu a dû travailler pour le produire sans en tirer profit. Tout Pouvoir ne peut distribuer aux uns que ce qu'il a préalablement confisqué à d'autres car on n'accroît pas les biens en les divisant. Quand la moitié d'un peuple croit qu'il ne sert à rien de faire des efforts car l'autre moitié les fera pour elle, et quand cette dernière moitié se dit qu'il ne sert à rien d'en faire car ils bénéficieront à d'autres, cela s'appelle le déclin et la fin d'une nation. Dr. Adrian Rogers, 1931 |
|||||
|
|
10
|
|
|
#13 |
|
Membre confirmé
![]() ![]() Inscription : mars 2003 Messages : 1 043 ![]() |
Merci pour ta patience et ta gentillesse.
Je reviendrai ici pour donner les résultats de ma requête et mettre ce post en résolu. Bonne journée ! |
|
|
10
|
|
|
#14 | |
|
Membre actif
![]() Inscription : août 2011 Messages : 44 ![]() |
Bonjour,
Citation:
honte à moi |
|
|
|
10
|
|
|
#15 | ||
|
Expert Confirmé
![]() Inscription : janvier 2011 Messages : 970 ![]() |
Salut,
Citation:
Citation:
__________________
$ man woman Il n'y a pas de page de manuel pour woman. |
||
|
|
30
|
|
|
#16 | |
|
Expert Confirmé Sénior
![]() Frédéric Ingénieur développement logiciels Inscription : février 2006 Messages : 3 055 ![]() |
Bien vu - J'ai appris quelque chose
![]() Citation:
__________________
Vous ne pouvez pas apporter la prospérité au pauvre en la retirant au riche. Tout ce qu'un individu reçoit sans rien faire pour l'obtenir, un autre individu a dû travailler pour le produire sans en tirer profit. Tout Pouvoir ne peut distribuer aux uns que ce qu'il a préalablement confisqué à d'autres car on n'accroît pas les biens en les divisant. Quand la moitié d'un peuple croit qu'il ne sert à rien de faire des efforts car l'autre moitié les fera pour elle, et quand cette dernière moitié se dit qu'il ne sert à rien d'en faire car ils bénéficieront à d'autres, cela s'appelle le déclin et la fin d'une nation. Dr. Adrian Rogers, 1931 |
|
|
|
10
|
|
|
#17 | ||
|
Membre confirmé
![]() ![]() Inscription : mars 2003 Messages : 1 043 ![]() |
Bonjour à tous,
Me voici de retour 30h00 plus tard. Ma console est toujours au même point : sous la commande, le curseur est bloqué et rien ne se passe. Je ne sais même pas si ça "travaille"... Sur les conseils de Sve@r, j'ai utilisé la commande de becket : Code :
Merci de votre aide. |
||
|
|
10
|
|
|
#18 | |
|
Expert Confirmé
![]() Inscription : janvier 2011 Messages : 970 ![]() |
Salut,
Citation:
Tu peux aussi t'intéresser à l'option "-prune" de find afin d'éluder certains répertoires de l'arborescence... Exemple "-prune" Voir aussi les exemples dans le man find
__________________
$ man woman Il n'y a pas de page de manuel pour woman. |
|
|
|
10
|
|
|
#19 | |||
|
Expert Confirmé Sénior
![]() Frédéric Ingénieur développement logiciels Inscription : février 2006 Messages : 3 055 ![]() |
Comme je te l'ai dit, tu aurais dû arrêter au bout de 10mn...
Citation:
Tu vas taper les instructions suivantes, ligne par ligne Code bash :
T'inquiète pas si le prompt qui apparait à chaque ligne prend la forme ">", ça veut dire que le shell attend la suite des instructions. Donc là, tu verras la liste des fichiers scannés défiler...
__________________
Vous ne pouvez pas apporter la prospérité au pauvre en la retirant au riche. Tout ce qu'un individu reçoit sans rien faire pour l'obtenir, un autre individu a dû travailler pour le produire sans en tirer profit. Tout Pouvoir ne peut distribuer aux uns que ce qu'il a préalablement confisqué à d'autres car on n'accroît pas les biens en les divisant. Quand la moitié d'un peuple croit qu'il ne sert à rien de faire des efforts car l'autre moitié les fera pour elle, et quand cette dernière moitié se dit qu'il ne sert à rien d'en faire car ils bénéficieront à d'autres, cela s'appelle le déclin et la fin d'une nation. Dr. Adrian Rogers, 1931 |
|||
|
|
10
|
|
|
#20 |
|
Membre actif
![]() Inscription : août 2011 Messages : 44 ![]() |
Bonjour,
Juste pour le "fun" : Code :
find / -type f \( -exec /usr/bin/printf "%s : " {} \; -exec grep -q '/usr/lib64/extensions/no-debug-non-zts-20060613/ssh2\.so' {} \; -exec /usr/bin/printf "ok\n" \; -o -exec /usr/bin/printf "ko\n" \; \)
|
|
|
20
|
Copyright © 2000-2012 - www.developpez.com