项目场景:
在用ftp传输工具,将linux下的hello.sh文件下载到本地编辑,编辑完成后上传到linux里运行
问题描述
hello.sh无法执行,并且报了一个错
-bash: ./hello.sh: /bin/bash^M: 坏的解释器: 没有那个文件或目录
原因分析:
这个文件在Windows 下编辑过,在Windows下每一行结尾是\n\r,而Linux下则是\n,所以才会有 多出来的\r
解决方案:
把/r替换成空白
sed -i 's/\r$//' hello.sh
附
shell文件的代码
#!/bin/bash
read -t 10 -p "请输入您的芳名:" name