-bash: ./centos-7.6.sh: /bin/bash^M: bad interpreter问题解决
2024-09-30 09:32:22
在windows下保存了一个脚本文件,用ssh上传到centos,添加权限执行nginx提示没有那个文件或目录。
shell脚本放到/etc/init.d/目录下,再执行/etc/init.d/nginx,提示多了这句/bin/bash^M: bad interpreter。
网上找了资料才知道
如果这个脚本在Windows下编辑过,就有可能被转换成Windows下的dos文本格式了,这样的格式每一行的末尾都是以\r\n来标识,它的ASCII码分别是0x0D,0x0A。如果你将这个脚本文件直接放到Linux上执行就会报/bin/bash^M:
bad interpreter错误提示。
解决方法很简单,首先你先要检查一下看看你的脚本文件是不是这个问题导致的,用vi命令打开要检查的脚本文件,然后用
:set ff?
命令检查一下,看看是不是dos字样,如果是dos格式的,继续执行
:set ff=unix
然后执行
:qw
保存退出即可。
最新文章
- OpenCV进阶之路:一个简化的视频摘要程序
- busybox rx 命令
- 老生常谈的Hibernate二级缓存
- 生成Excel直接以流或字节形式发给客户端,无需在服务生成一个实体文件。
- c语言位运算符
- struts2整合spring出现的Unable to instantiate Action异常
- cookie简介
- epoll的LT和ET模式
- @PostConstruct 和 @PreDestory
- 10天学会phpWeChat——第十天:phpWeChat的会员注册、登录以及微信网页开发
- Android studio 1.x 安装完毕后无法打开问题解决方案
- 《android开发艺术探索》读书笔记(十一)--Android的线程和线程池
- java-新建简单的Web项目
- xslfo和fop使用中的一些问题
- [Full-stack] 快速上手开发 - React
- 浅谈循环中setTimeout执行顺序问题
- svn项目清除svn链接信息
- 如何安装Exchange2010上安装更新汇总(Update Rollup)
- mybatis 关联映射
- Javascript之DOM性能优化