найти имя удаленного хоста с помощью команды s sh - PullRequest
0 голосов
/ 10 февраля 2020

Я пытаюсь найти имя удаленного хоста и том диска удаленного сервера с помощью команды s sh.

ssh user@remotehost echo $(df -B1G $vol|awk 'NR==2{printf "%s %dGB/%dGB\n",$5,$3,$2}') $(hostname) $vol

вывод диска происходит как положено, но команда hostname и vol в выводе дает вывод localhost и громкость. Вывод, который я получаю:

diskusgae% usedGB/totalGB localhost volume_on_localhost

Кто-нибудь может подсказать, как мне получить желаемый результат?

diskusgae% usedGB/totalGB remotehost volume_on_remotehost

1 Ответ

0 голосов
/ 10 февраля 2020

Я бы предложил этот синтаксис, чтобы избежать '\ "беспорядка

ssh -q $host bash <<- \EOF
    vol=/dev/mapper/vg1-home
    df -B1G $vol | awk 'NR==2{printf "%s %dGB/%dGB",$5,$3,$2}'
    printf " $HOSTNAME $vol"
EOF

Или как в случае sh

ssh -q $host sh <<- \EOF
    vol=/dev/mapper/vg1-home
    df -B1G $vol | awk 'NR==2{printf "%s %dGB/%dGB",$5,$3,$2}'
    printf " %s $vol" $(hostname)
EOF
...