web-dev-qa-db-fra.com

Que fait le script / dev / null?

J'étais sued dans un autre utilisateur pour exécuter l'écran, mais j'ai eu l'erreur Cannot open your terminal '/dev/pts/4' - please check.

J'ai trouvé une solution: script /dev/null et ensuite je peux utiliser screen. Pourquoi ça marche? Cela crée un nouveau pseudo terminal?

6
C1sc0

Sous UNIX, il s'agit d'un fichier virtuel dans lequel vous pouvez écrire. Les données écrites dans ce fichier sont ignorées. Il est similaire à l'appel de fichier NUL sur les machines Windows.

Point clé; Lors de l’enracinement d’une machine, les intrus redirigeront souvent la journalisation vers /dev/null Par exemple, la commande ln -s /dev/null.bash_history obligera le système à arrêter la journalisation des commandes bash.

En termes simples, cela signifie à peu près la même chose que trou noir. Utilisation typique: si vous n'aimez pas ce que j'ai à dire, veuillez adresser vos commentaires à /dev/null.

Pensez à/dev/null comme à un "trou noir". C'est l'équivalent le plus proche d'un fichier en écriture seule. Tout ce qui y est écrit disparaît pour toujours. Les tentatives de lecture ou de sortie ne donnent rien. Néanmoins,/dev/null peut être très utile à la fois en ligne de commande et dans les scripts.

  • Il rejette toutes les données qui y sont écrites mais signale que l'opération d'écriture a réussi.
  • Cela signifie qu’il faut rediriger à la fois la sortie standard et l’erreur sur /dev/null
  • Cela empêche le script d'afficher quoi que ce soit. comme des fenêtres "echo off"

script /dev/null empêchez tout message d'apparaître sur votre écran. Il supprime les messages en les dirigeant vers le "trou noir".

Regardez aussi Pourquoi redirige 'script' vers/dev/null/allow 'screen' fonctionne-t-il tant qu'il est soumis à un autre utilisateur?

Source: dictionnaire Linux

10
Mitch

En principe, script enregistre tous les dialogues de terminal dans un fichier. Lorsque vous spécifiez/dev/null, le fichier que tout le script de sauvegarde enregistrerait dans un fichier serait enregistré dans le trou noir.

0
TMKCodes