Wat is de betekenis van “-s” in het volgende commando?
ssh [email protected] /bin/bash -s << EOT
(van https://forum.gitlab.com/t/better-way-for-multiline-ssh-command/23420 )
Ik begrijp dat de opdracht een SSH-sessie opent en met / gevolgd_door het “-s” argument / optie.
Is dit correct?
Verder denk ik dat er staat “voer het volgende script uit en het” geef < < EOT door “om te zeggen verkrijg alle volgende tekst / regels als de scriptcode, het zal eindigen met een “EOT”.
Als de vorige interpretatie correct is, is EOT End Of Transmission en kan het elk woord zijn (is slechts een label)?
Reacties
Answer
De -s
optie van een standaard compatibele shell vertelt de shell om commandos van stdin te lezen, zelfs als stdin niet is verbonden met een tty.
In jouw geval, de here document
die volgt in het script wordt gebruikt als stdin voor de shell en die invoer wordt gebruikt als script om uit te voeren.
man ...
, dat ' s in jouw gevalman bash