
когда мы хотим узнать, что такое стандартный вывод ssh, то мы делаем
ssh $linux_server "cat /proc/uptime"
[[ $? -eq 0 ]] && ssh is ok
но как узнать стандартный вывод ssh в следующем случае?
UPTIME=` ssh $linux_server "cat /proc/uptime" `
решение1
Стандартный способ сделать это в большинстве оболочек (и, следовательно, наиболее переносимый) — использовать обратные кавычки (`), и поскольку аргумент, который у вас есть для ssh, не нуждается в кавычках, но результат, вероятно, будет таким:
UPTIME="`ssh $linux_server cat /proc/uptime`"
или вы можете быть специфичны для bash (и некоторых других оболочек, но не настолько универсальны, как обратная кавычка), используя $() следующим образом:
UPTIME="$(ssh $linux_server cat /proc/uptime$)"
Обратите внимание, что поскольку обратные кавычки используют одно и то же для разграничения команды, они не могут быть вложенными. Это одно из преимуществ конструкции bash. Она также не требует разветвления под-оболочки для немного более эффективного выполнения.
Более подробную информацию читайте на странице руководства bash.