錯誤:-bash: ./how_paras.sh: /bin/bash^M: bad interpreter: No such file or directory
當我在shell中執行how_paras.sh時,出現了這個錯誤
[root@localhost sbin]# ./how_paras.sh
-bash: ./how_paras.sh: /bin/bash^M: bad interpreter: No such file or directory
-bash: ./how_paras.sh: /bin/bash^M: bad interpreter: No such file or directory 翻譯即:
-bash:./how_paras.sh:/ bin / bash ^ M:糟糕的直譯器:沒有這樣的檔案或目錄
好,那我們來分析一下,為什麼會出現這種情況,這個問題說明什麼,以及如何來解決它!
情景
之前,我都是直接在shell中建立,編寫,執行指令碼,都沒有問題。因為感覺在shell中編寫指令碼不方便。於是使用WinSCP軟體,將在shell中建立的空指令碼,下載到windos系統中,用我的文字編輯器Notepad++來編寫指令碼,將編寫好的指令碼儲存,並上傳到linux系統中去。最後利用遠端工具shell連結linux系統,執行這個指令碼。
why:為什麼會出現這個問題
問題就出在,我把shell中的指令碼下載到windos系統中來進行編輯。
windos中Notepadd++編輯指令碼,使得指令碼檔案格式為DOS
格式,即每一行的行位是\r\n
來標識。
好,那我開啟vim編輯器確認一下。
[root@localhost sbin]# vim how_paras.sh
// ... ...此處省略how_paras.sh指令碼內容
//在命令列模式輸入下面這個命令
:set ff?
//顯示結果為
fileformat=dos 1,1 All
總結
1、開啟指令碼確認指令碼檔案格式:vim xxx.sh
,:set ff?
。xxx.sh代表指令碼檔案
what:這個問題說明什麼
出現這個問題說明在windos系統和linux系統中的檔案格式不一致。
how:如何解決
直接解決方法:
用vim編輯這個指令碼,在命令列模式下,設定檔案的格式,並儲存。
即vim xxx.sh
,:set ff=unix
或者
在Windos系統中Notepad++軟體中更改,開啟這個檔案:編輯-->轉換為UNIX格式
徹底解決方法:更改Windos系統中Notepad++軟體的檔案方式。改為:NIX格式。
步驟:
- 開啟Notepad++:
- 設定-->首選項-->新建:選擇格式為UNIX;
- 設定-->首選項-->預設目錄:選擇使用新樣式對話方塊(無副檔名和UNIX支援此功能)
參考連結
1、-bash: ./my_script: /bin/bash^M: bad interpreter: No such file or directory [duplicate]
2、/bin/bash^M: bad interpreter: No such file or directory
相關文章
- -bash: ./switch.sh: /bin/bash^M: bad interpreter: No such file or directory
- 解決“/bin/bash^M: bad interpreter: No such file or directory”
- 虛擬環境bin/python: bad interpreter: No such file or directoryPython
- shell指令碼編碼格式問題,bin/sh^M: bad interpreter: No such file or directory指令碼
- 執行shell指令碼報錯:-bash: ./test1.sh: /bin/bash^M: ...指令碼
- linux輸入yum後提示: -bash: /usr/bin/yum: No such file or directory的解決方案Linux
- 錯誤:bash: fork: Resource temporarily unavailableAI
- 指令碼前面的/bin/bash指令碼
- frepplectl解決報錯:bash: /usr/bin/frepplectl: Permission denied
- 【jenkins】/usr/bin/env: php: No such file or directoryJenkinsPHP
- 啟動 Laravel-Sail 服務時遇到的 /usr/bin/env: 'bash\r' 錯誤LaravelAI
- [Bash] Append the content at the beginning of the fileAPP
- mongodb錯誤解決辦法-bash: ./mongod: cannot execute binary file: Exec format errorMongoDBORMError
- Bash 指令碼中的錯誤處理指令碼
- shell指令碼頭,#!/bin/sh與#!/bin/bash的區別.指令碼
- mac下/usr/local/bin No such file or directory問題解決Mac
- bashdb除錯bash指令碼除錯指令碼
- MogDB 安裝解壓錯誤:cannot run bzip2: No such file or directory
- Bad magic number for central directory
- 【linux報錯】-bash: xhost: command not foundLinux
- -bash: /usr/local/bin/pod: /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/bin/ruby: b...Framework
- CentOS 已安裝virtualenv, 但還是報錯誤 bash: virtualenv: command not foundCentOS
- -bash: id: command not found -bash: tty: command not found
- python virtualenv報錯-bash: virtualenv: command not foundPython
- Linux下安裝jdk1.8檢視版本的時候報出:-bash: /usr/local/jdk1.8.0_144/bin/java: /lib/ld-linux.so.2: bad ELF interpreter: 沒有那個檔案或目錄LinuxJDKJava
- 400 Bad Request(錯誤請求)
- [Bash] Subshell
- [Bash] quotes
- [Bash] functionFunction
- [Bash] env
- 工作筆記:/bin/bash^M: 壞的直譯器: 沒有那個檔案或目錄 問題解決筆記
- Mac之telnet報錯-bash: telnet: command not foundMac
- ssh-add 報錯:Error connecting to agent No such file or directoryError
- [Bash] wc cmmand
- [Bash] echo command
- [Bash] read command
- [Bash] Head and TailAI
- [Bash] curl command