# Evaluate a string as a decimal number. # # Overcome the shell's usual interpretation of a string with leading # zeroes as an octal number, forcing, e.g., 0170 to evaluate as 170, # not 120. # Copyright (c) 2001-2012 by Hamilton Laboratories. All rights reserved. proc decimal(x) local i, j for i = 1 to strlen(x) do @ j = substr (x, i) if (j =~ '[1-9]*' && isnumber(j)) return j + 0 end return 0 end decimal $argv |