如何使用unix中的命令表示具有一定数字位数的数字。
将7表示为6位数字000007,将17表示为000017.如果有任何此类命令可以实现此目的,请告诉我。
答案 0 :(得分:3)
如果你正在使用BASH,那么你可以使用printf
内置来填充零:
printf "%06d\n" 7
000007
printf "%06d\n" 17
000017
要在变量中保存格式化字符串,请使用:
printf -v str "%06d\n" 17
echo "$str"
000017
如果不使用BASH,请使用awk
:
awk -v n=17 'BEGIN{printf "%06d\n", n}'
000017
awk -v n=7 'BEGIN{printf "%06d\n", n}'
000007
答案 1 :(得分:2)
无论您是否使用bash
,但假设您在类似操作系统的Unix / Unix上运行,printf
都可以使用,它是一个强制性的独立POSIX实用程序。
printf "%06d\n" 7