web-dev-qa-db-fra.com

pipe à Sudo -E bash -

Je me demandais à quoi sert de canaliser le fichier téléchargé par curl dans Sudo -E bash - dans le shell suivant:

curl -sL https://deb.nodesource.com/setup_5.x | Sudo -E bash -

7
Mr.Y

C'est une façon simple d'exécuter un script sans avoir à enregistrer le fichier, puis à l'exécuter. Lorsque vous enregistrez le fichier, puis l'exécutez, un certain nombre de problèmes peuvent se produire:

  • L'utilisateur n'a pas tapé le nom de fichier correctement
  • L'utilisateur n'a pas utilisé le bon shell (peut-être a-t-il exécuté sh foo.sh au lieu de bash foo.sh)
  • L'utilisateur a essayé d'exécuter le fichier au lieu de définir bash (./foo.sh), et a oublié de définir les autorisations d'exécution.
  • L'utilisateur a oublié d'utiliser Sudo

En fournissant une seule ligne de commande à exécuter, les développeurs peuvent réduire le nombre d'endroits où les choses peuvent mal tourner à cause d'une erreur luser.

Personnellement, je méprise les courbes sifflantes. Ce n'est pas sûr.

8
muru

Cette commande téléchargerait le fichier et tenterait de l'exécuter avec les privilèges root.

6
Barafu Albino