修复Bash脚本Here Document错误

遇到这种报错 /docker/init-letsencrypt.sh: line 103: warning: here-document at line 35 delimited by end-of-file (wanted `EOF')

这个错误是因为脚本中的 Here Document 分隔符 EOF 前面有空格,导致 Bash 无法正确识别结束标记。在脚本的第 35 行附近,EOF 前面有缩进。

直接丢给deepseek去修复,手工容易出错

然后检查

1.检查文件编码:确保脚本文件使用 Unix 格式(LF 换行符)而不是 Windows 格式(CRLF):

复制代码
sed -i 's/\r$//' /docker/init-letsencrypt.sh

2.检查脚本语法

复制代码
bash -n /docker/init-letsencrypt.sh
相关推荐
寻星探路11 小时前
【深度长文】万字攻克网络原理:从 HTTP 报文解构到 HTTPS 终极加密逻辑
java·开发语言·网络·python·http·ai·https
lly20240613 小时前
Bootstrap 警告框
开发语言
2601_9491465313 小时前
C语言语音通知接口接入教程:如何使用C语言直接调用语音预警API
c语言·开发语言
曹牧13 小时前
Spring Boot:如何测试Java Controller中的POST请求?
java·开发语言
KYGALYX13 小时前
服务异步通信
开发语言·后端·微服务·ruby
zmzb010314 小时前
C++课后习题训练记录Day98
开发语言·c++
猫头虎14 小时前
如何排查并解决项目启动时报错Error encountered while processing: java.io.IOException: closed 的问题
java·开发语言·jvm·spring boot·python·开源·maven
YUJIANYUE15 小时前
PHP纹路验证码
开发语言·php
仟濹15 小时前
【Java基础】多态 | 打卡day2
java·开发语言
孞㐑¥15 小时前
算法——BFS
开发语言·c++·经验分享·笔记·算法