1

ホスト A に、ホスト B、C、D でスクリプトを実行させたいと考えていますssh。スクリプトは、ホストのホスト名を知る必要があります (それは B、C、または D ですか?)。

ホスト A で次のスクリプトを実行したときに、次の問題が発生しました。

#!/bin/sh
ssh Adam@$1 <<'EOF'
echo 12345`hostname`ABC
EOF

for hostnameABC45myhostBの代わりに取得します。12345myhostBABCmyhostB

ホスト A は Ubuntu サーバー 10.4 32 ビットで、ホスト B、C、D は cygwin から openssh を実行する Windows XP です。

4

2 に答える 2

0

代わりに環境変数HOSTNAMEを使用することをお勧めします

echo abc ${HOSTNAME}defまたはそのようなもの

于 2012-04-16T21:12:18.550 に答える
0
uname -a | grep -i cygwin && {
echo 12345${COMPUTERNAME}ABC
} || echo 12345`hostname`ABC
于 2012-04-16T19:58:26.783 に答える