/bin/bash^M: 錯誤的解釋器: 沒有那個文件或目錄 的解決辦法
*.sh: 行 8: $'\r': 未找到命令
*.sh: 行 15: 未預期的記號 "$'{\r'" 附近有語法錯誤
*.sh: 行 15: `start() {
這個問題通常是由于文件中存在 Windows 換行符(CRLF)而引起的。在 Unix/Linux 系統中,腳本應該使用 LF 換行符,而不是 Windows 下的 CRLF。
要解決這個問題,你可以將文件中的 CRLF 換行符轉換為 LF。可以通過以下方法修正:
方法 1: 使用 dos2unix 工具
如果你的系統安裝了 dos2unix 工具,你可以執行以下命令來轉換文件的換行符:
dos2unix 你的腳本.sh
方法 2: 使用
sed 命令如果沒有 dos2unix 工具,你也可以使用 sed 來轉換:
sed -i 's/\r$//' 你的腳本.sh
方法 3: 使用文本編輯器
如果你使用的是文本編輯器(例如 VSCode 或 Sublime Text),可以通過以下方式修正:
- 打開腳本文件。
- 在右下角或菜單中,找到當前的換行符格式,通常會顯示為
CRLF。 - 將其修改為
LF,然后保存文件。

轉換換行符后,腳本應能正確運行。
學習時的痛苦是暫時的 未學到的痛苦是終生的
作者:卷心菜的奇妙歷險
本文版權歸作者和博客園共有,遵循 CC 4.0 BY-SA 版權協議,歡迎轉載 轉載請附上原文出處鏈接和本聲明,否則保留追究法律責任的權利。

浙公網安備 33010602011771號