shell指令碼中不識別source命令
工作需要寫一個批量執行的shell指令碼,其中使用了source命令初始化Android編譯環境載入特定的配置檔案。將source命令寫到指令碼中,發現整個命令都沒有變色,這是什麼情況,心中打了個大問號,不過還是忽略了,接著碼指令碼,指令碼完成後,興致勃勃的執行了一下,發現source這行執行失敗(command not found、source: not found ),導致後面用到的Android編譯環境也失敗了,大篇的失敗,心塞塞的
原因:使用下面的命令檢視下sh的詳情
ls -l `which sh`
結果如圖所示,/bin/sh預設指向了dash,so指令碼預設是以dash模式執行的
解決問題:將系統預設的執行方式修改為bash,執行下面命令
dpkg-reconfigure dash
執行結果,提示是否設定dash設定為系統預設shell模式,選擇no,將bash設定為預設
這是完成後,重新檢視sh詳情,見下圖
/bin/sh指向了bash。下面重新執行下shell指令碼,如果還是提示command not found,只能重啟下機器了
相關文章
- 詳解shell中source、sh、bash、./執行指令碼的區別指令碼
- shell指令碼中cd命令無效指令碼
- [20210330]bash使用source or ..呼叫shell指令碼注意txt指令碼
- 初識shell指令碼指令碼
- Shell指令碼知識簡述指令碼
- Linux命令和shell指令碼學習Linux指令碼
- Shell指令碼常用命令整理指令碼
- shell和bash指令碼命令學習指令碼
- 運維之shell指令碼初識運維指令碼
- shell指令碼的基礎知識指令碼
- shell指令碼linux命令連續執行指令碼Linux
- shell 命令在終端可以執行成功,為什麼放在 groovy 指令碼中不執行?指令碼
- shell中的source和直接執行sh的區別
- shell指令碼基本概念和命令小結指令碼
- linux shell指令碼中 =~ 的作用Linux指令碼
- shell指令碼指令碼
- centos 7 不識別ifconfig命令CentOS
- MySQL中的source命令MySql
- 如何呼叫python中的shell指令碼?Python指令碼
- Shell指令碼中的 /Dev/Null 用途指令碼devNull
- source 和export 命令的區別Export
- 什麼是Shell指令碼?Shell指令碼在Linux運維工作中的地位!指令碼Linux運維
- shell指令碼案例指令碼
- 常用shell指令碼指令碼
- Linux Shell指令碼Linux指令碼
- shell指令碼命令 執行python檔案&python命令列執行python程式碼指令碼Python命令列
- shell指令碼(6)-shell陣列指令碼陣列
- Linux shell指令碼中內聯輸入 <<- EOF和 <<EOF的區別Linux指令碼
- shell 指令碼加密 | shc指令碼加密
- 執行shell指令碼指令碼
- Shell 指令碼語句指令碼
- 【指令碼】shell語法指令碼
- shell 指令碼寫法:指令碼
- 如何加密shell指令碼加密指令碼
- shell指令碼總結指令碼
- Linux通過Shell指令碼命令修改密碼不需要互動Linux指令碼密碼
- iOS逆向 Shell指令碼+指令碼重簽名iOS指令碼
- shell指令碼中/dev/null 2>&1詳解指令碼devNull