GeekTool(UNIX)计数器前导零

GeekTool(UNIX)计数器前导零,unix,geektool,Unix,Geektool,我正试图通过Mac上的GeekTool(基于UNIX)为跑步比赛制作一个计时计数器,并具有以下功能: expr `date -j -f "%d/%m/%Y %H:%M:%S" "05/09/2012 07:41:15" "+%s"` - `date "+%s"` | awk '{ if( int( 0$1/86400 ) < 0 ) printf "" , int( 0$1/86400 ) ; if( int( 0$1/86400 ) < 0 || int( $1%86400/360

我正试图通过Mac上的GeekTool(基于UNIX)为跑步比赛制作一个计时计数器,并具有以下功能:

expr `date -j -f "%d/%m/%Y %H:%M:%S" "05/09/2012 07:41:15" "+%s"` - `date "+%s"` | awk '{ if( int( 0$1/86400 ) < 0 ) printf "" , int( 0$1/86400 ) ; if( int( 0$1/86400 ) < 0 || int( $1%86400/3600 ) < 0 ) printf "%d:" , int( $1%86400/3600 ) ; if( int( $1/86400 ) < 0 || int( $1%86400/3600 ) < 0 || int( $1%3600/60 ) < 0) printf "%d:" ,  int( $1%3600/60 ) ; if( int( $1/86400 ) < 0 || int( $1%86400/3600 ) < 0 || int( $1%3600/60 ) < 0 || $1%60 < 0 ) printf "%d" , $1%60 ; else printf "Hello!" }' | sed -E 's/-/ /' | sed -E 's/-/ /' | sed -E 's/-/ /' | sed -E 's/-/ /'
(5)2012年05/09/2012年07:41:15“+%S”S“““,””””””““““,日期“+%S”这一天,”;awk,{{日期”的一个日期,一个国家的天气(日期)的天气(日期)的天气,j-j-j-f)f-f-f(d)f-f-f-f-f-j-f-f-f-f-f-f-j-f-f-f-f-f-f-f-f-j-f-f-f-f-f-f-f-j-f-f-f-f-f-f-f-f-j-f-f-f-f-f-f-f-f-f-f(d-f-f-f-f-f-f-f-f-f-f-f-f-f-f-f-f-f-f-f-f-f-f(d(,int($1%3600/60);如果(int($1/86400)<0 | int($1%86400/3600)<0 | int($1%3600/60)<0 |$1%60<0)printf“%d”,则$1%60;否则printf“Hello!”;sed-E's/-/';sed-E's/-/';sed-E's/-/';sed-E's/-/'
问题是,当分钟或秒小于10时,没有前导零(即1:7而不是01:07)。如何将前导零添加到该值中,使其看起来像一个标准计时时钟?

使用
M
S

$ date +"%H:%M:%S"
14:54:00

printf“%02d”
而不是
printf“%d”
。此更改为00:00,但似乎没有影响1-9秒或分钟的间隔,1:01的间隔仍然为1:1。这不是已经出现在代码的开头(“%d/%m/%Y%H:%m:%S”)?