首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何缩短树木的路径?

如何缩短树木的路径?
EN

Stack Overflow用户
提问于 2015-08-13 15:45:33
回答 1查看 335关注 0票数 2

我的第一个Augeas脚本看起来类似于:

代码语言:javascript
复制
set /augeas/load/Properties/lens Properties.lns
set /augeas/load/Properties/incl /firstapp/WEB-INF/classes/some.properties
load
set /files/firstapp/WEB-INF/classes/some.properties/PROPERTY_1 "VALUE A"
set /files/firstapp/WEB-INF/classes/some.properties/PROPERTY_2 "VALUE B"
set /files/firstapp/WEB-INF/classes/some.properties/PROPERTY_3 "VALUE C"
save
set /augeas/load/Properties/lens Properties.lns
set /augeas/load/Properties/incl /secondapp/WEB-INF/classes/more.properties
load
set /files/secondapp/WEB-INF/classes/more.properties/PROPERTY_4 "VALUE D"
set /files/secondapp/WEB-INF/classes/more.properties/PROPERTY_5 "VALUE E"
set /files/secondapp/WEB-INF/classes/more.properties/PROPERTY_6 "VALUE F"
save

我运行它时,例如:

代码语言:javascript
复制
augtool -LeAf adjust-properties.aug -r $WEB_SERVER_ROOT/

现在,我想知道是否可以通过不一直重复重复路径元素来缩短脚本。

解决方案

根据this answer,我可以更新我的脚本,例如:

代码语言:javascript
复制
transform Properties.lns incl /firstapp/WEB-INF/classes/some.properties
transform Properties.lns incl /secondapp/WEB-INF/classes/more.properties
load
set /augeas/context /files/firstapp/WEB-INF/classes/some.properties
set PROPERTY_1 "VALUE A"
set PROPERTY_2 "VALUE B"
set PROPERTY_3 "VALUE C"
set /augeas/context /files/secondapp/WEB-INF/classes/more.properties
set PROPERTY_4 "VALUE D"
set PROPERTY_5 "VALUE E"
set PROPERTY_6 "VALUE F"
save
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-08-13 16:27:59

有几件事你可以做。

首先,在最近的augeas版本中,您可以使用transform而不是load命令。

然后,可以将/augeas/context设置为使用较短的相对路径。

最后,可以使用defvar声明变量并在路径表达式中重用它们。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31992891

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档