Mam skrypt, który musi wykonywać wiele różnych czynności na wielu różnych zdalnych komputerach. Myślałem, że heredoc do tego zadziała, ale nie jestem w stanie użyć zmiennej zdefiniowanej gdzie indziej w skrypcie i zmiennej zdefiniowanej w heredoc.
Oto kod:
#!/bin/sh
FOO="foo"
ssh some.remote.host << EOF
BAR="bar"
echo "FOO=$FOO"
echo "BAR=$BAR"
EOF
Spowoduje to tylko wydrukowanie następujących elementów:
FOO =
BAR = bar
Jeśli jednak cytuję wiersz EOF w ten sposób:
ssh some.remote.host << "EOF"
wypisuje tylko następujące:
FOO = foo
BAR =
Wszelkie wskazówki na temat tego, jak mogę używać obu zmiennych w heredoc?
Dzięki.