bash: ./xxxx.sh: line xx: syntax error near unexpected token "xx''
阿新 • • 發佈:2018-12-10
今天在編譯android openssl的時候使用指令碼檔案出現了下面的錯誤:
[email protected]:~/AndroidBox/openssl-1.1.0f$ source ./setenv-android.sh : command not found : command not found : command not found : command not found : command not found : command not found : command not found : command not found bash: ./setenv-android.sh: line 106: syntax error near unexpected token `$'do\r'' 'ash: ./setenv-android.sh: line 106: `do
在各種排查後沒有發現是指令碼語法的問題,也不是什麼命令沒有的問題,在使用cat -v +檔案 後發現問題的所在:
原來是檔案出現了^M,格式有問題,用file檢視檔案的格式:
我使用了虛擬機器和伺服器上的vi、vim、notepad++、UE編輯器都沒有檢視到^M,差不多都開始懷疑是不是格式的問題,通過使用dos2unix命令將檔案的格式轉化。
再次cat -v 後