Mon Tutoriel sur la programmation «Python»
Mon Tutoriel sur la programmation «Shell»
Sinon il y en a pleins d'autres. N'oubliez pas non plus les différentes faq disponibles sur ce site
Et on poste ses codes entre balises [code] et [/code]
Bonjour à tous,
A Sve@r :
Merci pour ce bout de code. Je viens de le tester. Effectivement les lignes défilent...find / -type f -print 2>/dev/null |while read f
do
echo "scanning $f"
grep -l "/usr/lib64/extensions/no-debug-non-zts-20060613/ssh2.so" "$f" && echo "trouvé dans $f"
done
Après, je suis comme un gros âne : je ne sais pas remonter en haut de la console, ce qui fait que je n'ai que les dernières lignes.
Pourrait-on rajouter une instruction du genre :
if(trouve){
stop;
}
Et aussi : que dois-je écrire si je veux éviter certains répertoires ?
Merci d'avance, et désolé de mon ignorance crasse.
![]()
ben pas vraiment...mais je comprends que cela peut être interprété comme cela.Envoyé par Sve@r
hummm...Envoyé par Sve@r
si mon post précédant est assimilable à de "l’arrogance", j'en suis désolé...
ce n'était pas intentionnel et encore moins dans mes habitudes![]()
Il faut "paginer" l'affichage :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 find / -type f -print 2>/dev/null |while read f do echo "scanning $f" grep -l "/usr/lib64/extensions/no-debug-non-zts-20060613/ssh2.so" "$f" && echo "trouvé dans $f" done|more
Merci !
Donc à chaque fois que la page de la console est pleine, je fais entrée, pour faire "more"...
Bon et bien rendez-vous ici en 2065.
Je dois m'y prendre mal, et ne pas faire ce qu'il faut pour identifier ce fichier.
Pourtant, tous les matins, je reçois ces maudits emails me disant qu'un fichier appelle ssh2.so avec un mauvais chemin...
![]()
à ta place, je redirigerai le résultat vers un fichier que je consulterai de temps à autre plutôt que de consulter l'affichage ...
Toi t'es un Charclo malin ! Un super Charclo ! Un Supertramp !
Bref, un pro.
En ce qui me concerne, dans ce domaine "shell", je suis à zéro.
J'ai tapoté dans Google et faire cette manip serait :
Humm...m'étonnerait que ce soit aussi simple que ça...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 find / -type f -print 2>/dev/null |while read f do echo "scanning $f" grep -l "/usr/lib64/extensions/no-debug-non-zts-20060613/ssh2.so" "$f" && echo "trouvé dans $f" done resultats.txt
[EDIT]
Ca a l'air de fonctionner avec
Merci à tous pour toute cette aide précieuse, c'est vraiment cool.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 done > /test/resultats.txt
Bonjour à tous,
Je reviens à la pêche aux conseils :
Ma recherche bute toujours sur cette ligne :
Alors ma question est : dans l'instruction que j'utilise
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 grep: /proc/sysrq-trigger: Invalid argument
Où et comment je peux écrire que je ne veux pas scanner /proc ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 find / -type f -print 2>/dev/null |while read f do echo "scanning $f" grep -l "/usr/lib64/extensions/no-debug-non-zts-20060613/ssh2.so" "$f" && echo "trouvé dans $f" done > test/resultats.txt
Et dans le cas où je veux en éviter plusieurs, comment j'écris les noms, avec quels séparateurs, guillemets...
Merci encore pour vos lumières.
Re-
Pour un répertoire à éluder :
Code : Sélectionner tout - Visualiser dans une fenêtre à part find / \( -name proc -prune \) -o \( -type f -print \) 2>/dev/null | while read f ...
Pour deux répertoires :
Code : Sélectionner tout - Visualiser dans une fenêtre à part find / \( -name proc -o -name dev \) -prune -o \( -type f -print \) 2>/dev/null | while read f ...
Bonsoir, et Merci à toi.
Je teste ça de suite !
grep permet aussi d'exclure certains patterns :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 ~$ man grep ... --exclude=GLOB Skip files whose base name matches GLOB (using wildcard matching). A file-name glob can use *, ?, and [...] as wildcards, and \ to quote a wildcard or backslash character literally. --exclude-from=FILE Skip files whose base name matches any of the file-name globs read from FILE (using wildcard matching as described under --exclude). --exclude-dir=DIR Exclude directories matching the pattern DIR from recursive searches. ...
Partager