我想獲取命令的輸出php -r 'echo get_cfg_var("some_var");'以根據(jù)預(yù)定義的值對(duì)其進(jìn)行檢查。目前,我有以下代碼:variableName := "default_mimetype"cmd := exec.Command("php", "-r", "'echo get_cfg_var(\"" + variableName + "\");'")out, err := cmd.CombinedOutput()跑完后,err.Error() 返回 "exit status 254"out 是 "PHP Parse error: syntax error, unexpected end of file in Command line code on line 1"是什么導(dǎo)致了這個(gè)錯(cuò)誤?我沒(méi)有正確地逃避某些事情嗎?
1 回答

皈依舞
TA貢獻(xiàn)1851條經(jīng)驗(yàn) 獲得超3個(gè)贊
問(wèn)題是你的論點(diǎn)。如果您更改已寫入 shell 命令的內(nèi)容,它將如下所示:
$ php -r "'echo get_cfg_var(\"default_mimetype\");'"
您會(huì)注意到在導(dǎo)致語(yǔ)法錯(cuò)誤的第二個(gè)參數(shù)周圍有一組額外的引號(hào)。您可以通過(guò)將您的更改exec.Command
為以下內(nèi)容來(lái)解決此問(wèn)題:
cmd := exec.Command("php", "-r", "echo get_cfg_var(\"" + variableName + "\");")
- 1 回答
- 0 關(guān)注
- 204 瀏覽
添加回答
舉報(bào)
0/150
提交
取消