Назад | Перейти на главную страницу

Как преобразовать строку в целое число в Puppet?

Я хочу проверить, является ли содержимое переменной нечетным числом. Но для этого мне нужно целое число.

$ip_array = split($ipaddress, '.')
$odd_ip = $ip_array[3] % 2

if $odd_ip == 1 {
  notice("is odd")
}

Есть ли простой способ преобразовать строку в целое число?

Ты можешь сделать это:

$ n_timeout = 0 + $ тайм-аут

Я привык использовать сканф функция в stdlib.

Пример этого:

$ ram = scanf ("$ {:: memorysize_mb}", "% i")

Для этого требуется марионетка> = 3.7.5

Ваш код будет работать точно так, как определено; Puppet неявно преобразует строки и целые числа в соответствии с используемым оператором сравнения.

Марионетка 4: $odd_ip = Integer($ip_array[3]) % 2

Взято из https://github.com/puppetlabs/puppetlabs-apt/pull/743/files