
quando queremos saber qual é a saída padrão do ssh então fazemos
ssh $linux_server "cat /proc/uptime"
[[ $? -eq 0 ]] && ssh is ok
mas como saber a saída padrão do ssh no caso do seguinte?
UPTIME=` ssh $linux_server "cat /proc/uptime" `
Responder1
A maneira padrão de fazer isso com a maioria dos shells (e, portanto, mais portáteis) é com crases (`) e como o argumento que você precisa para ssh não precisa de aspas, mas o resultado provavelmente você escreveria:
UPTIME="`ssh $linux_server cat /proc/uptime`"
ou você pode ser específico para o bash (e alguns outros shells, mas não tão universal quanto aspas) usando $() como:
UPTIME="$(ssh $linux_server cat /proc/uptime$)"
Observe que, como as crases usam a mesma coisa para delimitar o comando, elas não podem ser aninhadas. Essa é uma das vantagens da construção bash. Também não requer bifurcação de um subshell para uma execução um pouco mais eficiente.
Leia a página de manual do bash para obter mais detalhes.