分类: LINUX
2012-12-19 14:46:27
有些时候在写shell时需要保持字符的固定长度,用printf可以解决上述问题。
例如:
当DAY=05是
YESTODAY=`expr $DAY '-' 1`
YESTODAY的输出结果是4,与DAY的格式不同
用printf改写为
printf -v YESTODAY "%02d" `expr $DAY '-' 1`
YESTODAY的输出结果为04
附:
printf –v 为不显示到标准输出,而是将结果传递给变量YESTODAY
printf "%02d" 0代表前面补齐0;2代表2位数;d代表整数
例如 printf "%5.1f\n" 34 结果为 34.0 5表示含小数点共5位数;1表示小数点占1位数;f表示浮点数