我正在使用 Bash 腳本存取 Linux 中的遠端計算機

我正在使用 Bash 腳本存取 Linux 中的遠端計算機

我正在使用 ssh 命令和 pem 檔案存取遠端電腦。我的程式碼如下:

#!/bin/bash
ssh -i rijo.pem [email protected] <<EOF
sudo -s
var=`cat /opt/revsw-config/varnish/sites/rijotests4934567_revsw_net.json | egrep 'SERVER_NAME' | cut -b 19-44`
EOF

當我使用此腳本時,我無法將值儲存到變數中,但如果我在終端機中執行該命令,它就會起作用。當我運行腳本時,出現No such file or directory found錯誤。你能幫我嗎?

答案1

命令

cat /opt/revsw-config/varnish/sites/rijotests4934567_revsw_net.json | egrep 'SERVER_NAME' | cut -b 19-44

被執行本地在您的電腦上,然後將其發送到 ssh。這可能不是您想要的。 「此處文件」進行變數和流程替換,因此您必須轉義反引號才能獲得所需的結果。

相關內容