yes (Unix)

commande unix

yes est une commande Unix , qui génère une réponse affirmative, ou une chaîne de texte définie par l'utilisateur, en continu jusqu'à la suppression.

Exemple d'utilisation de la commande yes

La description modifier

En elle-même, la commande yes renvoie le « y », ou toute autre chaîne spécifié en tant qu'argument, suivi d'un saut de ligne à plusieurs reprises jusqu'à ce qu'il soit arrêté par l'utilisateur ou tué d'une autre manière; lorsqu'il est connecté à une commande, il continue jusqu'à ce que le tuyau se rompt (c'est-à-dire que le programme termine son exécution).

Les usages modifier

yes peut être utilisé pour envoyer une réponse affirmative (ou négative; par exemple, yes n ) à toute commande qui en demanderait autrement une, entraînant ainsi l'exécution de la commande de manière non interactive.

Piper yes à une commande avec de nombreuses invites de confirmation de l'utilisateur répondra automatiquement à toutes ces invites par "y" (ce qui signifie en général une réponse affirmative).

sudo yes | apt install foobar répondra aux invites pour confirmation avec y, installant effectivement foobar sans invites.


Cette utilisation peut être obsolète aujourd'hui, car la plupart des commandes qui demandent une réponse à l'utilisateur ont soit une option 'force' (par exemple, rm -f ), soit une option 'assume-oui' (par exemple, apt -y ).

À titre d'exemple, les éléments suivants:

rm -f *.txt

est fonctionnellement équivalent à

yes | rm *.txt

La commande yes associée à la commande head peut être utilisée pour générer des fichiers volumineux à des fins de test. Par exemple, en exécutant

yes 1234567 | head -1000 > file

résulte en un fichier composé de 1000 lignes comprenant chacune huit caractères (1, 2, 3, 4, 5, 6, 7 et nouvelle ligne)

Bibliographie modifier

  • Montfort, Nick (). Le programme trivial «oui» (PDF) (Rapport technique). Cambridge, Massachusetts: Réservoir Trope. 12-01 . Consulté le 21/03/2017 .

Notes et références modifier

Liens externes modifier