Linux系統下運行bash腳本提示/usr/bin/env: ‘bash\r’: No such file or directory


1、問題現象

在Linux系統中使用./make.sh運行了一個簡單的bash腳本,運行失敗,並報錯提示如下所示:

 

2、錯誤原因:

主要是應用bash后面多了'\r'字符的原因,在Linux終端下,輸出'\r'會什么都不顯示,只是把光標移到行首,因此,終端雖然輸出了"/usr/bin/env bash",但是遇到'\r'后,光標會移到到行首,接着輸出錯誤信息"No such file or directory",最終,bash腳本運行失敗。

 

3、解決方法:

通過重新設置bash腳本的文件格式去解決問題,如下:

使用vim先查看bash腳本的當前文件格式:

$ vim make.sh

# 進入到命令行模式查看當前文件格式
:set ff

可以看到,當前的文件格式為dos,例如下面:

修改當前文件的格式為unix,如下:

# 重新進入vim的命令行模式
: set ff=unix
: set ff

# 命令行模式保存文件
:wq

修改后的bash文件格式如下所示:

最后,重新運行bash即可。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM