Shell 获取错误/usr/bin/env:sh:运行命令play时没有这样的文件或目录

Shell 获取错误/usr/bin/env:sh:运行命令play时没有这样的文件或目录,shell,sh,Shell,Sh,我是游戏框架的初学者。我只是提取播放框架文件并提取它们,然后在$path全局变量中给出播放目录的路径。在此之后,当我在ubuntu play help上运行命令时,它会给我以下错误: /usr/bin/env: sh: No such file or directory 知道我为什么会遇到这个错误以及如何解决它吗?只要将sh终端更改为bash即可 使用这个,一切都应该很好 1. Change user entry in /etc/passwd a) edit /etc/passwd using

我是游戏框架的初学者。我只是提取播放框架文件并提取它们,然后在
$path
全局变量中给出播放目录的路径。在此之后,当我在ubuntu play help上运行命令时,它会给我以下错误:

/usr/bin/env: sh: No such file or directory

知道我为什么会遇到这个错误以及如何解决它吗?

只要将sh终端更改为bash即可 使用这个,一切都应该很好

1. Change user entry in /etc/passwd
a) edit /etc/passwd using any editor

$ vi /etc/passwd
b) find the line that belongs to the user (foo) that we about to modify
foo:x:1001:1001::/home/foo:/bin/sh
c) change from /bin/sh to /bin/bash
foo:x:1001:1001::/home/foo:/bin/bash
d) save
e) Logout and login back

2. Use chsh command
a) type chsh
$ chsh
b) You will be asked for password. Enter your password
c) This screen will appear
Enter the new value, or press ENTER for the default
Login Shell [/bin/sh]:
d) Put /bin/bash at the menu and press Enter

$PATH
环境变量在
~/.bashrc
~/.bash\u profile
~/.profile
中设置


source
相关的配置文件或启动新的bash终端应该可以解决此问题。

如果脚本具有windows行结尾而不是unix行结尾,则通常会发生此错误

尝试在脚本上运行dos2unix,然后再次尝试运行命令以查看是否出现相同的错误

dos2unix [filename]

我也遇到了同样的问题,并通过单击记事本++解决了它
编辑->下线转换->Unix,然后保存文件。

在新Macbook Pro上运行时出现此错误,因为默认shell现在是ZSH而不是Bash。只需键入
bash
即可进入bashshell,并正常运行脚本。

如果您的文件是UTF-8编码的,并且在文件的开头有一个“BOM”头(字节顺序标记),也会发生这种情况。使用编辑器“删除bom表”。

这就是解决方案。我从windows计算机上复制了这个文件。在该文件上安装并运行dos2unix使其能够正常运行。如果在macOS上,默认情况下您没有dos2unix,请参阅以获取解决方案。在将项目移动到其他计算机后,我遇到了这种情况,请再次尝试重新创建清单