
我正在使用 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。這可能不是您想要的。 「此處文件」進行變數和流程替換,因此您必須轉義反引號才能獲得所需的結果。