我正在嘗試在遠程服務器上的 JS 檔案頂部添加一行,我要運行的命令是:
sed -i "1i\const test = require(\'../../../test/test.json\');" /opt/test.js
所以我嘗試了以下方法:
ssh user@host "sed -i "1i\const test = require(\'../../../test/test.json\');" /opt/test.js"
由于“(”和“)”,這給了我一個錯誤,所以我在它們之前添加了一個“\”:
ssh user@host "sed -i "1i\const test = require\(\'../../../test/test.json\'\);" /opt/test.js"
但是我仍然收到錯誤:
bash: -c: line 0: syntax error near unexpected token `('
我怎樣才能解決這個問題?
uj5u.com熱心網友回復:
sed -i與其使用(它只是在幕后管理一個臨時檔案),不如使用ed并將腳本(通過ssh)提供給ed的標準輸入。
ssh user@host 'ed /opt/test.js' <<'EOF'
1i
const test = require('../../../test/test.json');
.
wq
EOF
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/420037.html
標籤:
下一篇:如何在主配置中更新當前時區?
