Question: Comment trouver tous les fichiers accessibles en écriture référencés dans les scripts de démarrage présents dans le répertoire /etc/init.d d'un RHEL 5 serveur?BASH - Trouver tous les fichiers inscriptibles du monde référencés dans un ensemble de fichiers
Contraintes:
- solutions BASH seulement (ce qui fait partie d'un script plus)
- Aucun outil supplémentaire/packages peuvent être installés
Voici ce que j'ai jusqu'à présent.
worldWritable=$(find/-type f -perm -002)
startupScripts=$(ls -l /etc/init.d/* | tr '\011' ' ' | tr -s ' ' | cut -f 9,9 -d " ")
for file in $worldWritable
do
for line in $startupScripts
do
grep -w "$file" $line | grep -v "^#" >> outFile
done
done
Ce genre de travaux, mais il prend beaucoup de temps, et il comprend beaucoup de choses qui n'est pas correcte (au moins pas ce que je suis à la recherche). J'ai juste besoin de "outFile" pour contenir une liste des fichiers inscriptibles dans le monde trouvés référencés dans n'importe quel script dans le répertoire /etc/init.d.
Cela ne me dérange pas complètement d'abandonner cette approche si quelqu'un peut offrir une meilleure solution. J'ai juste besoin de quelque chose de plus rapide et de plus fiable. Merci!
Je ne suis pas sûr exactement mais peut-être quelque chose comme 'find/-type f -perm -002 -exec grep -l 'searchstring' {} \;' pourrait réduire la durée. –