解决Linux执行脚本报错 /bin/bash^M: 坏的解释器: 没有那个文件或目录

今天在测试loader脚本,按照惯例用wget http://****/loader.sh下载脚本,用chmod 777 loader.sh给脚本赋权,但后面执行脚本时出现了问题。

执行./loader.sh报错:

  1. /bin/bash^M: 坏的解释器: 没有那个文件或目录
解决Linux执行脚本报错 /bin/bash^M: 坏的解释器: 没有那个文件或目录

执行bash loader.sh同样报错:

  1. loader.sh:行5: $'/r': 未找到命令
    loader.sh:行7: $'/r': 未找到命令
    loader.sh:行15: 未预期的符号 $'{/r'' 附近有语法错误 'oader.sh:行15:workerdir( ){
解决Linux执行脚本报错 /bin/bash^M: 坏的解释器: 没有那个文件或目录

百度搜索得知,Windows换行字符为/n/r,而Linux换行符为/n,所以在Linux中执行脚本时会报错多了/r。

解决方法:

使用下面命令将文件Windows编码中的换行符/n/r替换成Linux下的换行符/n

  1. sed -i 's//r$//' loader.sh
开发数据库电脑运维

Windows启动时开机logo变形的解决方法

2023-9-14 19:46:37

开发数据库电脑运维

php composer.phar install大量报错could not be found in any version, there may be a typo in the package name

2023-9-14 21:29:54

0 条回复 A文章作者 M管理员
欢迎您,新朋友,感谢参与互动!
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
私信列表
搜索