J'essaie d'exécuter la commande suivante, mais obtient une erreur d'argument trop longue. Pouvez-vous m'aider?.
Host# grep -rl 'pattern' /home/*/public_html/*
-bash: /bin/grep: Argument list too long
Existe-t-il un moyen de remplacer cette erreur et de grep les fichiers de correspondance de motifs que je veux dans le répertoire public_html de tous les utilisateurs. Il y a environ 500+ utilisateurs sur le même serveur.
Utilisez find
find /home/*/public_html -type f -exec grep -l 'pattern' {} +
Le +
le modificateur permet de regrouper les noms de fichiers en morceaux gérables.
Cependant, vous pouvez le faire avec grep -r
. Les arguments doivent être les noms de répertoires, pas les noms de fichiers.
grep -rl 'pattern' /home/*/public_html
Cela contiendra seulement 500+ arguments, pas des milliers de noms de fichiers.