#!/usr/bin/perl -w use strict; my($amt, $units, $availableunits) = @ARGV[0,1], 'kmgt'; $units =~ s/^([$availableunits])(b)?$/ (1000*($2?1.024:1))**index("X$availableunits",$1) /exi; print $amt * $units; print "\n";