我怎样才能在 vagrant 文件中进行动态计算
How can I do computations on the fly within the vagrant file
我如何根据一些输入在 vagrant 文件中即时计算哈希值,例如我做
# shell
$ echo "machine13" | sha256sum | cut -c1-12
2372240456c2
# vagrantfile
Vagrant.configure(2) do |config|
config.vm.hostname = "machine13"
config.vm.network "public_network", bridge: "eth0", use_dhcp_assigned_default_route: true, :mac => "2372240456c2"
end
如果你只想运行一个bash命令并将其输出到你的Vagrantfile中的一个变量,你可以使用ruby的反引号来执行命令.
比如你的 Vagrantfile:
# Vagrantfile
my_hostname = "machine12"
mac_hash = `echo #{my_hostname} | sha256sum | cut -c1-12`
Vagrant.configure(2) do |config|
config.vm.hostname = my_hostname
config.vm.network "public_network", bridge: "eth0", use_dhcp_assigned_default_route: true, :mac => mac_hash
end
我如何根据一些输入在 vagrant 文件中即时计算哈希值,例如我做
# shell
$ echo "machine13" | sha256sum | cut -c1-12
2372240456c2
# vagrantfile
Vagrant.configure(2) do |config|
config.vm.hostname = "machine13"
config.vm.network "public_network", bridge: "eth0", use_dhcp_assigned_default_route: true, :mac => "2372240456c2"
end
如果你只想运行一个bash命令并将其输出到你的Vagrantfile中的一个变量,你可以使用ruby的反引号来执行命令.
比如你的 Vagrantfile:
# Vagrantfile
my_hostname = "machine12"
mac_hash = `echo #{my_hostname} | sha256sum | cut -c1-12`
Vagrant.configure(2) do |config|
config.vm.hostname = my_hostname
config.vm.network "public_network", bridge: "eth0", use_dhcp_assigned_default_route: true, :mac => mac_hash
end