Nitpick sur la réponse de @bertieb qui dit que Cet exemple montre l'utilisation de tee pour contourner une limitation inhérente à la commande sudo. sudo est incapable de canaliser la sortie standard vers un fichier.
Il n'y a pas de limitation inhérente, seulement une mauvaise compréhension de la façon dont la commande est traitée.
Exemple :
sudo echo 0 > /proc/sys/net/ipv4/ip_forward
El courant Shell analyse la ligne de commande. Il trouve la redirection de sortie et l'exécute. Ensuite, il exécute la commande, qui est la commande sudo
et fournit le reste de la ligne de commande comme arguments à la commande exécutée. Si le Shell actuel n'a pas les permissions root, alors la redirection de la sortie échouera.
echo 0 | sudo tee /proc/sys/net/ipv4/ip_forward
Cela fonctionne parce que la redirection de la sortie est reportée à la section tee
qui, à ce moment-là, a les droits de root car elle a été exécutée par le biais de la commande sudo
.
sudo bash -c "echo 0 > /proc/sys/net/ipv4/ip_forward"
Cela fonctionne parce que le Shell qui effectue la redirection a les permissions root.