"tar zxf /home/user/tmp/test.tar.gz",-6ren">
gpt4 book ai didi

ruby - 除非目录存在于 puppet 中,否则执行命令

转载 作者:数据小太阳 更新时间:2023-10-29 07:28:42 24 4
gpt4 key购买 nike

如果 puppet 文件中不存在目录,如何执行命令?

exec { "my_exec_task":
command => "tar zxf /home/user/tmp/test.tar.gz",
unless => "test -d /home/user/tmp/new_directory",
path => "/usr/local/bin/:/bin/",
}

我收到错误消息:“无法评估:找不到命令‘test’”。这也是检查目录是否不存在的最佳做法吗?

最佳答案

test/usr/bin 为我工作,所以将它添加到路径可以解决错误。

unless => 'bash -c "test -d /home/user/tmp/new_directory"',

应该也可以。但我认为正确的方法是使用creates:

exec { "my_exec_task":
command => "tar zxf /home/user/tmp/test.tar.gz",
creates => "/home/user/tmp/new_directory",
path => "/usr/local/bin/:/bin/",
}

关于ruby - 除非目录存在于 puppet 中,否则执行命令,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21662155/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com