一个shell脚本执行出错的问题

1. 问题出现背景

    因为最近在调试,总是做一些很繁琐的工作,所以就想着搞个shell脚本玩玩~

2. 问题

    shell脚本看得比较多,还是第一次写 奋斗,东拼西凑地写了几十行,功能总算够用了。结果编译就出错了,错误信息如下:
    /bin/bash^M: bad interpreter: No such file or directory
    

3. 问题分析

    ^M这个符号是回车符,就是说脚本里多了这个符号,网上查了一下,终于明白了原因:我是在windows下编辑的文件,而linux下面的换行符和windows是不一样的……
    【介绍】关于换行符的处理,windows下面是回车+换行,而Linux下面是 换行……所以问题才会出现……

4. 解决办法

    【1】直接在linux下面编辑文件
   【2】使用转换命令:dos2unix,这个命令在linux发行版中一般是没有的,需要安装(sudo apt-get install tofrodos)
   【3】使用命令sed -i -e 's/\r$//' *.sh进行消除回车符

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值