Как я могу передать имя хоста в вызов SSH?
Я пытаюсь написать скрипт для автоматизации подключения к различным удаленным экземплярам, но мне трудно передать полученное имя хоста в качестве аргумента ssh. Я в основном пытаюсь сделать следующее:
echo "example.com" | xargs -I {} ssh {}
Я также попробовал несколько комбинаций, но безрезультатно. Наиболее близким я был со следующим, но он теряет интерактивность.
echo "example.com" | xargs -0 ssh -t -t
Конечная цель состоит в том, чтобы иметь возможность иметь скрипт, который будет возвращать имя хоста /ipaddress, к которому затем можно будет подключиться через ssh. Например:
my_random_script | ... ssh
1 ответ
Решение
Может быть, вы хотите запустить:
ssh `echo example.com`
ssh `your_random_script`
Когда вы вставляете какую-либо команду в обратные кавычки, эта команда выполняется, и результат сохраняется в безымянной переменной. Для сохранения / повторного использования вы можете вызвать что-то вроде:
VAR=`your_random_script`
ssh $VAR