yes
Je me demandais à quoi pourrait servir la commande, je suis tombé sur ce commentaire et j'ai essayé d'exécuter
yes $(yes yes)
D'après ce que je comprends, cela devrait simplement imprimer une séquence infinie de yes
, mais à la place, cela ne produit rien et plante mon terminal graphique après quelques secondes. (Si je l'exécute sur tty1, je vois l'invite de connexion après un certain temps.)
Que se passe-t-il ici?
yes
ne revient jamais.xargs
:yes yes | xargs -P 0 yes
(ou sans-P 0
pour l'infini à un seul processus)Réponses:
Cela devrait déjà suffire pour fonctionner
L'
$(...)
exécute la commande interne jusqu'à ce qu'elle soit terminée et capture toute sa sortie. - Maintenant qu'ilyes
s'exécute depuis longtemps et génère beaucoup de sortie, bash finira par manquer de mémoire et se bloquer.la source
Pour voir le message de l'erreur qui ferme votre shell, vous devez exécuter un sous-shell.
la source