博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
linux脚本^M: bad interpreter:解决方法
阅读量:6851 次
发布时间:2019-06-26

本文共 654 字,大约阅读时间需要 2 分钟。

转自:http://blog.csdn.net/huiguixian/article/details/6386774

在Linux中执行.sh脚本,异常提示/bin/sh^M: bad interpreter: No such file or directory。

分析:

这是不同系统编码格式引起的:在windows系统中编辑的.sh文件可能有不可见字符,所以在Linux系统下执行会报以上异常信息。

解决:

1)在windows下转换: 

  利用一些编辑器如UltraEdit或EditPlus等工具先将脚本编码转换,再放到Linux中执行。转换方式如下(UltraEdit):File-->Conversions-->DOS->UNIX即可。 或者按Ctrl+H,将文本内容转换为十六进制,然后其中的0D 0A(Dos下的回车)替换为0A(Unix下的回车),但是这种方式还是要注意修改后保存时文本的类型,比较推荐的是下面第二种方式。

2)也可在Linux中转换: 

首先要确保文件有可执行权限#sh>chmod a+x filename然后修改文件格式 #sh>vi filename利用如下命令查看文件格式 :set ff 或 :set fileformat可以看到如下信息 fileformat=dos 或 fileformat=unix利用如下命令修改文件格式 :set ff=unix 或 :set fileformat=unix:wq (存盘退出)最后再执行文件 #sh>./filename

 

你可能感兴趣的文章
jquery内核学习(5)--对象的遍历
查看>>
在Android迷你广告上添加浮动的关闭按钮
查看>>
2dcontext
查看>>
企业级大数据处理方案-01
查看>>
日期和字符串相互转换的方法
查看>>
ASP.NET Localization
查看>>
ssm框架,出现xxx不能加载,或者bean不能加载时的解决方案之一
查看>>
types.h头文件学习
查看>>
【递推】hdu5927 Auxiliary Set
查看>>
计算机的组成与操作系统
查看>>
包冲突getJspApplicationContext
查看>>
Webrtc入门——基于阿里云ubuntu 最新webrtc Android平台编译详细说明
查看>>
prepareCall方法执行存储过程
查看>>
深入学习jQuery节点关系
查看>>
在浏览器中输入网址后的流程
查看>>
鼠标移动效果
查看>>
源码-hadoop1.1.0-core-org.apache.hadoop.classification
查看>>
创建4个线程,两个对j加一,两个对j减一(j两同两内)
查看>>
Make body have 100% of the browser height
查看>>
linux 服务器安装php5.6
查看>>