Puppetを使用していますが、2つのフォルダ間にシンボリックリンクを作成する必要があります。同じ構造のフォルダが10個ほどありますが、常にxx/yy/zz
。
このような:
ln -s aa/bb/folder_to_link folders_1_to_x/yy/link_name
追いかけようとするこれら方向を取ったが成功しなかった。
これを行うための簡単なコマンドはありますか?
答え1
操り人形でこの種の問題を解決する正しい解決策は、定義された型を作成することです。
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
私はこれが非常に簡単に動作すると思いますが、必要に応じて明確にすることができます。