【Linux】解决shell脚本中syntax error:unexpected end of file问题

背景

平时自己设计shell脚本或修改服务器自带的脚本后,执行或者source的是否会出现了syntax error: unexpected end of file的错误。

可能出现的问题

  1. 格式:shell脚本是在window系统下写完,然后传到linux系统时出现,可以使用系统文件格式转化:dos2unix
    可以在编vim模式下查看文件格式:vim ->命令模式 -> set ff 回车,看下结果fileformat
dos2unix                         # 将文件格式转化

vim编辑下
:set ff                          # 在vim中查看文件的系统格式
:set fileformat=unix             # 在vim中将系统文件格式改为unix
  1. 内容:如果上面的dos2unix命令后,执行还是出现报错,那就不是文件格式的问题了,而是代码层级的问题了
    因为没有lint代码规范提示,所以你的shell脚本内容,需要从头到尾检查下:
    a. if...else...fifor...donefor...if...fi...done等结构的上下结构闭合是否完整
    b. 闭合结构型代码的开始结尾是否有其他多余字符

以上操作,应该就可以解决此问题

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值