脚本格式问题记录

服务器上的一些脚本迁移到其他服务上发生的小问题
问题:执行一个在win10系统编写好的shell脚本,放到Linux上执行报错如下:

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

原因:window系统写的脚本,文档格式与linux不一致,这里应该不是编码上的问题(下图是我用notepad编辑的)
在这里插入图片描述
验证:

cat -A xxx.sh

在linux查看到的
在这里插入图片描述
在window查看到的
在这里插入图片描述
这里需要转换一下Unix格式即可
解决方法:
1、window系统通过编辑工具,我用的是notepad自带的如图1右下角“转为Unix”
2、Linux系统通过命令替换掉^M字符(所以应该是不同系统的换行符号不一样导致的吧 且都是在换行的位置出现)

sed -i "s/\r//" xxx.sh

其他小问题顺便记录一下Permission denied 权限不足

[root@centos mnt]# ./xxx.sh                                                   
bash: ./xxx.sh: Permission denied

解决方法是赋权我这里没有其他权限要考虑直接给最大

chmod 777 xxx.sh
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值