作者: | 来源:互联网 | 2023-06-21 10:12
我想将Vagrantfile中的嵌入式Shell脚本的退出代码分配给变量:
if ((e.email || {}).custEmailExists == "This email existe.")
,然后在我的Vagrantfile中使用它,例如:
FOO = config.vm.provision "shell",env: {
"FILE" => "/tmp/hello"
},inline: <<-SHELL
[ -f "$FILE" ]; echo $?
SHELL
我尝试的方法显然不起作用。这里有人知道吗
- 如果可能的话,并且
- 如果是,怎么办?
我最终使用了this这样的方法。
我发现,Vagrantfile中的所有Ruby条件一开始就被评估,尽管这些条件中的内嵌Shell脚本(如果有的话)在评估时被不评估。同时。这会导致一些奇怪的行为,而我可以通过如上所述的操作来避免。
,
在这里着陆后,我意识到您实际上可以像在ruby中那样分配命令退出代码的输出:
FOO = `mycommand`
BAR = $?.exitstatus
然后将其与其他任何变量一起在Vagrantfile
中使用。