Передать переменную с помощью EOF и использовать переменную хоста

Я хочу отправить переменную из источника в хост и сценарий хоста exec. Вот мой код:

var1=1 ssh -p 42 root@xxx /bin/bash << EOF var2=2 echo $var1 echo $var2 EOF 

Возврат: 1

 var1=1 ssh -p 42 root@xxx /bin/bash << \EOF var2=2 echo $var1 echo $var2 EOF 

Возврат: 2

Как вернуть:

 1 2 

?

One Solution collect form web for “Передать переменную с помощью EOF и использовать переменную хоста”

Вы хотите, чтобы ваша локальная оболочка расширила $var1 но удаленная оболочка расширила $var2 :

 var1=1 ssh -p 42 root@xxx /bin/bash << EOF # un-quoted/escaped var2=2 echo $var1 echo \$var2 EOF 
  • Чтение переменных без bash из файла в скрипт bash
  • Как использовать расширенное значение переменной оболочки в имени другой переменной?
  • Запустите команду, сохраненную в переменной, чтобы эхо в файл
  • Вставка переменных в команду в сценарии оболочки
  • Невозможно назначить вывод вложенных команд переменной в bash
  • Создать переменную на основе порядка, в котором файл находится в алфавитном списке файлов
  • В сценарии bash, что отличается между объявлением и нормальной переменной?
  • Каков наиболее эффективный способ grep для двух совершенно разных вещей и присвоения значений отдельным переменным?
  • Сценарий Bash для заполнения шаблона
  • Как выбрать количество цифр в переменной в моих сценариях?
  • Переменные баша в команде
  • Linux и Unix - лучшая ОС в мире.