Hva betyr «-s» i følgende kommando?
ssh [email protected] /bin/bash -s << EOT
(fra https://forum.gitlab.com/t/better-way-for-multiline-ssh-command/23420 )
Jeg forstår at kommandoen åpner en SSH-økt og utfører /bin/bash
med / fulgt_ av «-s» argumentet / alternativet.
Er dette riktig?
Videre tror jeg det står «utfør følgende skript og det» passerer < < EOT «for å si få all følgende tekst / linjer som manuskode, vil den ende med en «EOT».
Hvis den forrige tolkningen er riktig, er EOT End Of Transmission og kan være hvilket som helst ord (er bare en etikett)? >
Kommentarer
Svar
-s
alternativet for et standard kompatibelt skall ber skallet om å lese kommandoer fra stdin selv om stdin ikke er koblet til en tty.
I ditt tilfelle er here document
som følger i skriptet brukes som stdin for skallet og at inngangen brukes som skript for å utføre.
man ...
, at ' s i ditt tilfelleman bash