当我们在windows系统中写好了一个脚本,在Ubuntu中执行时报错:./databasebf.sh: line 2: $'\r': command not found。原因是因为windows里面是以 \r ,\n进行换行,而Linux 中是以 \n进行换行。
介意使用处理方法2,因为有时候我们服务器是内网,内网是无法安装 dos2unix。
处理方法1
先安装dos2unix
命令:sudo apt-get dos2unix
然后执行我们的脚本
命令: sudo dos2unix databasebf.sh
然后就可以正常执行我们的脚本: sudo bash ./databasebf.sh
处理方法2
直接使用sed去掉里面的 \r
执行命令:sed -i 's/\r$//' filename
处理方法3
在文件里添加: set ff=unix