Quelle est la différence entre
rm executable
et
rm executable >>dev/null
J'ai eu la dernière déclaration dans un Makefile
et l'ai changée pour la première. J'ai eu l'impression que rien n'a changé.
rm executable
supprime simplement le fichier executable
du répertoire en cours.
rm executable &> /dev/null
fait de même, mais il exécute la commande avec les flux de sortie et d'erreur redirigés vers le fichier spécial /dev/null
.
Cela signifie que vous ne verrez aucun message dans le terminal. Le fichier /dev/null
vers lequel ils sont redirigés est un périphérique de caractère virtuel qui engloutit simplement toutes les données entrantes comme un trou noir.
La redirection de sortie vers /dev/null
de cette manière est souvent utilisée dans les scripts dans lesquels vous ne voulez pas que l'utilisateur voie la sortie possible des commandes contenues.
Cette ligne d’ajout à /dev/null
signifie seulement que toutes les sorties sont omises ou mieux dire d’envoyer directement dans le nirvana des données (ou vide, ou fosse sans fond). Donc, la seule chose qui pourrait changer est que si cette commande rencontre une erreur, vous verrez apparaître une sortie à l'écran.