!#/ bin/bash:没有这样的文件或目录

ale*_*nbj 3 linux shell

首先,我跑

/bin/bash a.sh
Run Code Online (Sandbox Code Playgroud)

它成功了.

但是当我想跑的时候

/bin/bash a.sh > a_info.txt
Run Code Online (Sandbox Code Playgroud)

它失败了.

Error: line 1: !#/bin/bash: No such file or directory
Run Code Online (Sandbox Code Playgroud)

它似乎并没有^M导致这个错误.

vir*_*tor 11

shebang模式#!/bin/your_shell不是!#/bin/your_shell.只是修复错字.


Sti*_*itt 5

检查文件的编码.

如果你收到这个错误,但你没有拼错'shebang',请仔细查看文件的编码.我在编码'带有BOM的UTF8'的文件上收到此错误...我猜BOM(字节顺序标记)导致了问题.将编码更改为ASCII并修复了它(或者您可以使用'无BOM的UTF-8',这对于仅包含ASCII字符的文件实际上是相同的).