以下bash腳本的結果是輸出「空行」猛砸變量始終是空
ssh [email protected]_service <<EOF
START_SERVICE_TIME_IS_UP=124
echo $START_SERVICE_TIME_IS_UP
exit
EOF
不明白爲什麼。我期望在輸出中看到「124」。遠程服務器正在運行Red Hat Linux。
以下bash腳本的結果是輸出「空行」猛砸變量始終是空
ssh [email protected]_service <<EOF
START_SERVICE_TIME_IS_UP=124
echo $START_SERVICE_TIME_IS_UP
exit
EOF
不明白爲什麼。我期望在輸出中看到「124」。遠程服務器正在運行Red Hat Linux。
這裏doc中的變量由本地shell擴展,除非你引用here-doc。將end-token放在引號中引用here-doc。
ssh [email protected]_service <<'EOF'
START_SERVICE_TIME_IS_UP=124
echo $START_SERVICE_TIME_IS_UP
exit
EOF
總是用 「」 回聲 「$ START_SERVICE_TIME_IS_UP」 東西使用起來得心應手回聲https://github.com/united-bashers/mkbash
您也可以使用[shellcheck(http://www.shellcheck.net)。它說:「[Quote'EOF'](https://github.com/koalaman/shellcheck/wiki/SC2087)使這裏的文檔擴展發生在服務器端而不是客戶端。」 –