今天在Ubuntu 16.04上運行某些腳本時,總是報告某行“Syntax error: "(" unexpected (expecting "fi")”錯誤。
查了一下腳本沒有發現錯誤,經過搜索說可能是sh的鏈接問題。
首先到/bin/下面查看當前鏈接:ls -l /bin/sh
發現sh默認是指向dash的。按照文末參考文章中的方法修改鏈接,似憾訓是沒有效果。
經過搜索發現dash和bash是不同的(一直把dash看成bash了!!),那么到底是bash還是該是dash呢,Ubuntu安裝時默認使用dash,據說dash比bash體積小速度快,但原來在bash下正常運行sh腳本在dash下運行往往有問題,而且提示錯誤模糊,說明dash的兼容似乎也有問題。
規避問題的方法,就是重新配置dash:
sudo dpkg-reconfigure dash
會彈出重新配置dash界面,并選擇“no”不使用dash。
參考資料:
http://www.linuxidc.com/Linux/2012-03/57493.htm
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/25064.html
標籤:區塊鏈技術
上一篇:區塊鏈可以結合的領域
