Je cherche actuellement des moyens de supprimer la commande d'erreur sous Linux, en particulier la commande cp
.
Je fais:
root@ubuntu:~$ cp /srv/ftp/201*/wha*/*.jj ~/.
cp: cannot stat `/srv/ftp/201*/wha*/*.jj': No such file or directory
Comment supprimer le message d'erreur qui s'imprime à l'écran? C'est-à-dire que je ne veux pas voir ce message d'erreur sur mon moniteur.
Réponses:
Pour supprimer la sortie d'erreur dans
bash
, ajoutez2>/dev/null
à la fin de votre commande. Cela redirige le descripteur de fichier 2 (STDERR) vers/dev/null
. Il existe des constructions similaires dans d'autres coquilles, bien que la construction spécifique puisse varier légèrement.la source
Redirigez le message d'erreur (STDERR) vers
/dev/null
:Exemple:
la source
Votre question n'est pas claire. La chose la plus raisonnable à faire serait de ne pas exécuter
cp
du tout lorsque le caractère générique ne correspond à aucun fichier, plutôt que d'exécutercp
et de masquer le message d'erreur.Pour ce faire, si le shell est bash, définissez l'
nullglob
option de sorte que le motif générique se développe à rien s'il ne correspond à aucun fichier. Vérifiez ensuite si le motif s'est étendu à quelque chose et n'appelez pascp
dans ce cas.En clair, testez si le glob est resté inchangé, pointant vers un fichier inexistant.
la source
Ajoutez ceci dans ~ / .bashrc:
puis:
la source
stderr
à/dev/null
quand la sortie d'erreur est indésirable. Ou en utilisant un nom différent decp
.cp
.vous pouvez utiliser:
1 Option:
2>/dev/null
.Option 2:
2>&1
En plus vous pouvez l'utiliser à la fin de votre commande, cela supprimera les messages d'erreur:
Exemple ici-
Ici, vous ne pouvez pas récupérer d'informations sur le message d'erreur. Ex2:
ici, vous pouvez récupérer des informations dans le fichier journal ci-dessous:
la source