windows环境下编写的shell脚本上传到linux执行报错

-bash: ./databasebak.sh: /bin/bash^M: bad interpreter: No such file or directory

怀疑是文件格式的问题,用vi databasebak.sh进入databasebak.sh这个文件, 然后在底部模式下, 执行 :set ff 查看一下, 结果发现fileformat=dos, 看看, 果然是文件格式问题

解决办法,vi databasebak.sh进入后, 在底部模式下, 执行:set fileformat=unix后执行:x或者:wq保存修改。 然后就可以执行./databasebak.sh运行脚本了。