我有一些区域文件使用绑定特定的$ GENERATE指令,如此
$GENERATE 50-100 srv-${-50,3,d} A 10.34.38.$
现在当我将它添加到cfengine时,它会尝试扩展$ {...}并给出错误。我可以使用\ $ {来传递这个$ {并传递cfengine但是我不能使用named-checkzone(cfengine LITERAL指令也会使named-checkzone失败,因为它在区域文件中添加了@@ LITERAL)。一种选择是将$ GENERATE扩展为单行。我有其他选择吗?
答案 0 :(得分:1)
这是CFEngine 2还是CFEngine 3?
如果它是CFEngine 3,如果你为此使用内置变量const.dollar会有帮助吗?
考虑以下示例:
body common control {
bundlesequence => { "test"};
}
bundle agent test {
reports:
linux::
"$GENERATE 50-100 srv-$(const.dollar){-50,3,d} A 10.34.38.$";
}
这通过cf-agent输出以下内容:
# /var/cfengine/bin/cf-agent -K -f /tmp/test.cf
R: $GENERATE 50-100 srv-${-50,3,d} A 10.34.38.$
你想要实现这样的目标吗?