歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux編程 >> Linux編程 >> 解決Linux下編譯.sh文件報錯 “[: XXXX: unexpected operator”

解決Linux下編譯.sh文件報錯 “[: XXXX: unexpected operator”

日期:2017/3/1 9:36:48   编辑:Linux編程

本人經常在Linux通過編譯 .sh文件來生成工程,之前一直都沒問題,代碼一直都沒變,但是今天編譯的時候,卻提示錯誤:

然後我就表示很費解,查看我的.sh文件,其中有很多的[] ,都是這些報錯,可是之前一直沒問題。

後來發現,因為Ubuntu默認的sh是連接到dash的,又因為dash跟bash的不兼容所以出錯了.執行時可以把sh換成bash文件名.sh來執行.成功.dash是什麼東西,查了一下,應該也是一種shell,貌似用戶對它的诟病頗多。

修改sh默認連接到bash的一種方法:

sudo dpkg-reconfigure dash

選擇no 即可!

再次編譯!通過!搞定!

Copyright © Linux教程網 All Rights Reserved