我正在使用 Puppet,我需要在两个文件夹之间创建符号链接。我有大约 10 个具有相同结构的文件夹,并且我总是想在xx/yy/zz
.
像这样的东西:
ln -s aa/bb/folder_to_link folders_1_to_x/yy/link_name
我尝试跟随这些方向,但没有成功。
有没有一个易于编写的命令可以完成此任务?
答案1
在 puppet 中解决此类问题的正确解决方案是创建一个定义的类型:
define folder_link (
$link_map = $name,
) {
$link_map_split = split($link_map, ':')
$origin = $link_map_split[0]
$link_name = $link_map_split[1]
$link_path = "/folders_1_to_x/yy/$link_name"
file { $link_path:
ensure => link,
target => $origin,
}
}
class foo {
folder_link { ["/aa/bb/folder_to_link:foo", "/cc/dd/folder_to_link:bar"]: }
}
这将符号链接/folders_1_to_x/yy/foo
指向/aa/bb/folder_to_link
和/folders_1_to_x/yy/bar
指向/cc/dd/folder_to_link
。
我认为它的工作原理非常简单,但如果需要我可以澄清。