我有一个数组中的文件名前缀@list1列表和第二个数组中的完整文件名列表@list2.最后,我想得到第三个数组,其中只包含与前缀不匹配的完整文件名@list1.我开始时:
for my $match (@list1) {
@list3 = grep { !/$match/ } @list2;
}
Run Code Online (Sandbox Code Playgroud)
但它没有做我认为会做的事情.我有什么选择才能得到我正在寻找的结果.
我正在为我的网络服务器构建一个结构.我在hiera有我的设置,但我似乎无法让傀儡回馈正确的类型.
在common.yaml
vhosts:
hostname:
sitename:
app_url: value
app_type: value
Run Code Online (Sandbox Code Playgroud)
我有每个vhost多个站点和多个虚拟主机.在我的清单中,我将创建文件夹结构和其他设置任务,但是现在我甚至无法让它迭代网站.
目前的清单:
define application($app_name, $app_url) {
notice("App Type: ${app_type}")
notice("App Url: ${app_url}")
}
$vhosts = hiera('vhosts')
$vhosts.each |$vhost| {
create_resources(application, $vhost)
}
Run Code Online (Sandbox Code Playgroud)
我得到的错误是create_resources需要哈希.但是,如果我输入演员,$vhost我知道它不是哈希而是元组.
我怎么从我的yaml哈希中得到一个元组?有没有更好的方法来迭代这个数据集来获得我需要的东西?