这个异常是因为行尾符号不兼容导致的,比如Windows的行尾符号\r,Unix的行尾符号是\n,如果实在写shell文件,可以在IDE中修改Line Separator,或者在命令行使用sed -i $'s/\r$//' filename。
在使用WSL中更新了pyenv,出现了/usr/bin/env: ‘bash\r’: No such file or directory的异常,pyenv命令无法使用,其他命令的返回后面,也会跟着这个异常。
卸载重装pyenv、重启wsl都无法解决。
原因是pyenv的项目改用了CRLF(\r\n)的行尾,需要将项目中的文件手动改为LF,即\n。
使用命令:
find . -type f -exec dos2unix {} +
dos2unix命令可以通过apt install dos2unix来安装。