繁体   English   中英

如何获取Linux补丁实用程序以在补丁文件中使用env var

[英]how to get linux patch util to use env var in patch file

我正在使用omnibus构建cli软件包,其中有一个补丁程序,用于将一些内容注入文件中。 补丁本身就是git diff。 我想使用环境变量作为内容的一部分。 就像是:

diff --git a/cli/common.py b/cli/common.py
index 3eb3efd..1feae45 100644
--- a/cli/common.py
+++ b/cli/common.py
@@ -72,8 +72,12 @@

+++  - {'OLDPATH': 'NEWPATH/%{ENVVAR}}'

这是我们使用rpm构建时使用的语法。 它似乎不再起作用,并且我确定已设置ENVVAR,因为它已成功用于打包程序脚本的其他部分。

谢谢!

patch程序对RPM变量一无所知。 可以使用diff-file作为here-document在RPM规格文件中运行patch ,这将尝试替换脚本中的值。 它可能看起来像这样:

patch <<EOF
index 3eb3efd..1feae45 100644
--- a/cli/common.py
+++ b/cli/common.py
@@ -72,8 +72,12 @@

+++  - {'OLDPATH': 'NEWPATH/%{ENVVAR}}'
EOF

RPM将仅在其scriptlet中替换变量,而不在单独的文件中替换变量。

进一步阅读:

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM