背景:运行脚本是报 line 1: #!/bin/bash: No such file or directory
原因:一般 which bash 文件存在的话,就是dos格式的问题,dos格式要改成 uninx 格式,才能正常运行!
如果我们在windows系统下创建了一个文件,默认的换行格式就是dos的,这样的文件在linux下处理和执行一般都存在一些问题,我们可以通过命令查看文件是否是dos格式的,如果有如图所示的M标识,就是 的,需要进行转换
cat -v 1.sh
M-oM-; M-? #!/bin/bash
date
1 ^M
2^M
1. 安装格式转换工具:yum install dos2unix -y
2. 格式转换: dos2unix 1.sh 再运行 sh 1.sh 就正常了