Bash

語法錯誤:“(”意外(預期單詞)—在我的 bash 腳本中

  • November 22, 2016

我有一個 bash 腳本:

#!/bin/bash

VAR1="var1"
VAR2="var2"
VAR3="var3"

cat ${VAR1} \
   <(echo -e '<something>') \                       # <--------- here's the error
   ${VAR2}/file123.txt \
   <(echo -e '</something>\n<something2>') \
   ${VAR3}/file456.txt \
   <(echo -e '</something2>')

當我執行它時:sh my_script.sh,我收到錯誤:

my_script.sh: 9: Syntax error: "(" unexpected (expecting word)

更新:

bash未找到,“/bin/bash”不存在。也bash沒有。

嘗試 :

chmod 755 "my_script.sh"

然後像這樣簡單地執行它

my_script.sh

#!/bin/bash開頭的那行用於告訴您的系統您應該使用哪個 shell 來執行腳本。我認為你通過執行它來覆蓋它sh my_script.sh。您也可以顯式編寫/bin/bash my_script.sh. 此外,如果您的腳本中有一些特定於 bash 的語法,您應該考慮將副檔名更改.bash為更明確。


編輯

您的 FreeBSD 發行版上似乎沒有bash(FreeBSD 上的預設 shell 似乎是tcsh)。您可以在此處bash找到在 FreeBSD上安裝的教程。我提供的解決方案應該可以正常工作。祝你好運。

引用自:https://unix.stackexchange.com/questions/325136