5 façons de vider ou de supprimer le contenu d’un fichier volumineux sous Linux
Parfois, lorsque vous traitez des fichiers dans un terminal Linux, vous pouvez vouloir effacer le contenu d’un fichier sans nécessairement l’ouvrir à l’aide d’un éditeur de ligne de commande Linux. Comment y parvenir ?
Dans cet article, nous allons passer en revue plusieurs façons différentes de vider le contenu d’un fichier à l’aide de quelques commandes utiles.
Attention : Avant de passer à l’examen des différentes méthodes, notez que parce que sous Linux tout est un fichier, vous devez toujours vous assurer que le(s) fichier(s) que vous videz ne sont pas des fichiers utilisateur ou système importants. L’effacement du contenu d’un système ou d’un fichier de configuration critique peut entraîner une erreur ou une défaillance fatale de l’application/du système.
Cela dit, vous trouverez ci-dessous des moyens d’effacer le contenu d’un fichier à partir de la ligne de commande.
Important : Pour les besoins de cet article, nous avons utilisé le fichier access.log dans les exemples suivants.
1. Vider le contenu du fichier en le redirigeant vers Null
La méthode la plus simple pour vider ou vider le contenu d’un fichier à l’aide de la redirection shell null (objet inexistant) vers le fichier comme suit :
# > access.log
2. Vider le fichier à l’aide de la redirection de commande « true »
Ici, nous utiliserons un symbole : est une commande intégrée du shell qui est essentiellement équivalente à la commande true et elle peut être utilisée comme une no-op (pas d’opération).
Une autre méthode consiste à rediriger la sortie de la commande native : ou true vers le fichier comme suit :
# : > access.log
OR
true > access.log
3. Vider le fichier à l’aide des utilitaires cat/cp/dd avec /dev/null
Sous Linux, le périphérique null est essentiellement utilisé pour supprimer les flux de sortie indésirables d’un processus, ou bien comme un fichier vide approprié pour les flux d’entrée. Cela se fait normalement par un mécanisme de redirection.
Et le fichier de périphérique /dev/null est donc un fichier spécial qui annule (supprime) toute entrée qui lui est envoyée ou dont la sortie est la même que celle d’un fichier vide.
De plus, vous pouvez vider le contenu d’un fichier en redirigeant la sortie de /dev/null vers celui-ci (fichier) en tant qu’entrée à l’aide de la commande cat :
# cat /dev/null > access.log
Ensuite, nous utiliserons la commande cp pour effacer le contenu d’un fichier comme indiqué.
# cp /dev/null access.log
Dans la commande dd suivante, if signifie le fichier d’entrée et of fait référence au fichier de sortie.
# dd if=/dev/null of=access.log
4. Vider le fichier à l’aide de la commande echo
Ici, vous pouvez utiliser une commande echo avec une chaîne vide et la rediriger vers le fichier comme suit :
# echo "" > access.log
OR
echo > access.log
Remarque : Vous devez garder à l’esprit qu’une chaîne vide n’est pas la même chose que null. Une chaîne est déjà un objet, même si elle peut être vide, tandis que null signifie simplement l’inexistence d’un objet.
Pour cette raison, lorsque vous redirigez la commande hors de l’écho ci-dessus dans le fichier, et que vous affichez le contenu du fichier à l’aide de la commande cat, il affiche une ligne vide (chaîne vide).
Pour envoyer une sortie nulle au fichier, utilisez l’indicateur -n qui indique à echo de ne pas afficher le saut de ligne final qui mène à la ligne vide produite dans la commande précédente.
# echo -n "" > access.log
5. Vider le fichier à l’aide de la commande tronquer
La commande truncate permet de réduire ou d’étendre la taille d’un fichier à une taille définie.
Vous pouvez l’utiliser avec l’option -s qui spécifie la taille du fichier. Pour vider le contenu d’un fichier, utilisez une taille de 0 (zéro) comme dans la commande suivante :
# truncate -s 0 access.log
C’est tout pour l’instant, dans cet article, nous avons couvert plusieurs méthodes d’effacement ou de vidage du contenu d’un fichier à l’aide d’utilitaires de ligne de commande simples et de mécanismes de redirection de shell.
Ce ne sont probablement pas les seuls moyens pratiques disponibles pour le faire, vous pouvez donc également nous parler de toute autre méthode non mentionnée dans ce guide via la section des commentaires ci-dessous.







