Dockerfile 使用 sed

发布时间 2023-04-23 17:24:37作者: lqqgis

在使用Dockerfile制作镜像时,可也通过 sed命令实现镜像中文件内容的修改

通过指定行号修改

# 1. 在指定行号后增加内容:
RUN sed -i -e '行号a内容' 文件路径

# 2. 替换指定行号的内容:
RUN sed -i -e '行号c内容' 文件路径

# 3. 在指定行号前增加内容:
RUN sed -i -e '行号i内容' 文件路径

通过匹配内容进行修改

# 1. 匹配行前修改:
RUN sed -i '/要匹配的内容/a修改后的内容' 文件路径

# 2. 匹配行后修改:
RUN sed -i '/要匹配的内容/i修改后的内容' 文件路径

# 3. 替换匹配行:
RUN sed -i '/要匹配的内容/c替换后的内容' 文件路径

补充

在sed条件中是不认识变量取值的,所以要想它能够识别变量,就是把‘单引号’变成"双引号"。

RUN sed '/$x/d' test
RUN sed "/$x/d/" test