Une autre option qui évite de rediriger les choses vers /dev/zero
est
sudo command | sudo dd of=FILENAME
Le dd
la solution imprime toujours les fichiers indésirables sur stderr :
$ ls | sudo dd of=FILENAME
0+1 records in
0+1 records out
459 bytes (459 B) copied, 8.2492e-05 s, 5.6 MB/s
Cela peut être évité en utilisant le status
choix :
command | sudo dd status=none of=FILENAME
Autre possibilité intéressante (pour Linux en tout cas) :
command | sudo cp /dev/stdin FILENAME
Pour copier l'entrée TTY dans un fichier, je fais souvent ceci :
sudo cp /dev/tty FILENAME
C'est dommage que tee n'ait pas d'option pour supprimer stdout.
Vous pouvez utiliser un script. C'est à dire. mettre quelque chose comme ça dans c'est-à-dire $HOME/bin/stee
, 0tee
ou similaire :
#!/bin/bash
argv=
while [[ "$1" =~ ^- ]]; do
argv+=" $1"
shift
done
sudo tee $argv "$1" > /dev/null
#!/bin/bash
sudo tee "[email protected]" > /dev/null
Rendez-le exécutable :
$ chmod 755 acier
Maintenant, c'est-à-dire :
$ ls -la | stee -a /root/foo