Recherche de site Web

SOLUTION : /bin/rm : liste d'arguments trop longue


Au fil du temps, le stockage utilisé dans un système Linux géré augmente également. En conséquence, nous essayons de manipuler des fichiers, de déplacer, de rechercher, de supprimer des fichiers, etc., avec des commandes telles que mv, is, cp, rm, etc. Abordons le problème de la "liste d'arguments trop longue" et trouvons un moyen de le résoudre facilement.

La syntaxe courante de cette erreur ressemble à ceci.

bash: /usr/bin/rm: Argument list too long

Qu'est-ce qu'une "liste d'arguments trop longue" ?

À l'intérieur de la ligne de commande, lorsque l'utilisateur dépasse la longueur de ligne de commande maximale autorisée après une limite pour les arguments de votre commande, l'erreur qui se produit est "Liste d'arguments trop longue".

Pourquoi cette erreur vient-elle?

Il atteint la limite ARG_MAX lorsque l'utilisateur entre trop d'arguments dans une seule commande. Les arguments de la fonction exec peuvent atteindre la longueur maximale ARG_MAX. Lorsqu'une liste d'arguments est trop longue, l'utilisateur l'a notifié avec le message "La liste d'arguments est trop longue". erreur.

Un argument peut également être appelé argument de ligne de commande. Pour contrôler le processus de ligne de commande, la commande est définie par l'entrée donnée par l'utilisateur. Spécifiez les arguments dans la ligne de commande, puis entrez les arguments dans la console ou le terminal.

SOLUTION : /bin/rm : liste d'arguments trop longue

L'erreur "Liste d'arguments trop longue" ne vient pas, pour cela l'utilisateur peut savoir quelle doit être la longueur de la commande. Le système d'exploitation détermine la longueur de la commande. Nous pouvons vérifier la limite maximale d'arguments sur les systèmes Linux via la commande suivante.

getconf ARG_MAX

En dehors de cela, il existe de nombreuses solutions pour résoudre l'erreur ci-dessus.

Recréez le dossier après l'avoir supprimé

Supposons qu'il existe un répertoire qui ne contient pas de fichiers que les utilisateurs souhaitent conserver. Dans ce cas, la solution la plus rapide et la meilleure consiste à supprimer et à recréer ce répertoire. Mais en cela, l'utilisateur doit d'abord s'assurer qu'il n'y a pas un tel fichier dans le répertoire qu'il supprime qu'il souhaite conserver.

Un utilisateur doit supprimer tous les fichiers et dossiers d'un répertoire. Dans ce cas, l'utilisateur peut le faire par la commande rm, c'est-à-dire le caractère générique '*.' Dans cette condition, la longueur de notre commande devient très grande. Pour résoudre ce problème, nous pouvons appliquer un seul argument pour supprimer simultanément tout le répertoire à l'aide de la commande suivante.

rm -r /path/to/directory/

Si nous devons toujours conserver le répertoire, nous pouvons le recréer avec la commande suivante.

mkdir

En utilisant la commande find, supprimez les fichiers de masse

Ce processus est relativement facile, rapide ou précis. Les utilisateurs peuvent rechercher n'importe quel fichier en utilisant la commande find et en le supprimant.

find . -type f -delete

Grâce à la commande écrite ci-dessus, nous pouvons trouver n'importe quel fichier du répertoire.

Ou, pour certains fichiers spécifiques, nous utilisons la commande comme suit.

find . -name '.txt' -type f -delete

En utilisant la boucle

Les utilisateurs peuvent utiliser une boucle pour supprimer des fichiers à l'intérieur du dossier à l'aide de la commande rm. Cette méthode est très lente, en raison de laquelle elle est moins utilisée par les utilisateurs.

for i in * ; do rm ${i} ; done

La commande ci-dessus supprimera tous les fichiers présents dans le répertoire.

Fractionnement manuel

Les utilisateurs peuvent exécuter la commande à plusieurs reprises en divisant le fichier en groupes plus petits, chacun avec des chaînes différentes comme arguments via ls, wc, mv, cp, rm, etc.

ls -lrt events1*.log | wc -l

31154
ls -lrt events2*.log | wc -l15941

Dans l'exemple ci-dessus, nous divisons les fichiers d'un répertoire pour diminuer la commande et ignorer l'erreur.

Conclusion

Dans cet article, nous avons appris les nombreuses méthodes pour résoudre la "liste d'arguments trop longue*. Ici, nous avons discuté de tous les points ou sujets connexes qui s'y rapportent. N'oubliez pas de lire toutes les informations que nous vous avons données dans cet article.

Articles connexes: