博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
-bash: ./run.sh: /bin/bash^M: bad interpreter: No such file or directory 报错解决方法
阅读量:4223 次
发布时间:2019-05-26

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

shell脚本文件是dos格式,即每一行结尾以\r\n来标识,而unix格式的文件行尾则以\n来标识。

查看脚本文件是dos格式还是unix格式的几种办法。

(1)cat -A filename  从显示结果可以判断,dos格式的文件行尾为^M$,unix格式的文件行尾为$。(2)od -t x1 filename 如果看到输出内容中存在0d 0a的字符,那么文件是dos格式,如果只有0a,则是unix格式。(3)vi filename打开文件,执行 : set ff,如果文件为dos格式在显示为fileformat=dos,如果是unxi则显示为fileformat=unix。

解决方法
方法一:

 [root@localhost bin]# dos2unix run.shdos2unix: converting file run.sh to UNIX format ...

方法二:

vim mysell.sh :get fileformat          #查看本文件的格式:set fileformat=unix     #设置文件为unix:wq                      #保存

方法三:

#使用sed命令,直接替换结尾符为unix格式

 

sed -i "s/\r//" run.sh或者 sed -i "s/^M//" run..sh

 
————————————————
版权声明:本文为CSDN博主「基咯咯」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/u010180815/article/details/106335954/

你可能感兴趣的文章
SD卡驱动分析--基于高通平台
查看>>
[图文] Seata AT 模式分布式事务源码分析
查看>>
pm 源码分析
查看>>
Sending the User to Another App
查看>>
kmsg_dump
查看>>
Getting a Result from an Activity
查看>>
Allowing Other Apps to Start Your Activity
查看>>
dev/mem
查看>>
pfn_valid 源码分析
查看>>
dev/kmem 和dev/mem的区别
查看>>
test-definitions/blob/master/auto-test/bigdata/bigdata.sh
查看>>
/test-definitions/blob/master/auto-test/blktrace/blktrace.sh
查看>>
test-definitions/blob/master/auto-test/blogbench/blogbench.sh
查看>>
test-definitions/blob/master/auto-test/boost/boost.sh
查看>>
Java多态性理解
查看>>
Intellij Idea 工具在java文件中怎么避免 import .*包,以及import包顺序的问题
查看>>
IDEA Properties中文unicode转码问题
查看>>
Oracle中Blob转换成Clob
查看>>
Linux如何查看so中函数名
查看>>
自动管理代码的android.mk
查看>>