53 lines
		
	
	
	
		
			1.1 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
			
		
		
	
	
			53 lines
		
	
	
	
		
			1.1 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
LC_ALL=C
 | 
						|
LANG=C
 | 
						|
 | 
						|
SHELLSTART=$(date +%s)
 | 
						|
SECS=1275250155
 | 
						|
export TZ=EST5EDT
 | 
						|
 | 
						|
printf "%()T\n" $SECS
 | 
						|
printf "%(abde)Z\n" -1
 | 
						|
 | 
						|
printf "%(%e-%b-%Y %T)T\n" $SECS
 | 
						|
 | 
						|
printf -v v1 "%(%e-%b-%Y %T)T\n" $(date +%s)
 | 
						|
printf -v v2 "%(%e-%b-%Y %T)T\n" -1
 | 
						|
 | 
						|
case $v1 in
 | 
						|
$v2)	;;
 | 
						|
*)	echo "current time and -1 possible mismatch|$v1|$v2|" >&2 ;;
 | 
						|
esac
 | 
						|
unset v1 v2
 | 
						|
 | 
						|
v1=$(date +%s)
 | 
						|
printf -v v2 "%(%s)T" -1
 | 
						|
 | 
						|
case $v1 in
 | 
						|
$v2)	;;
 | 
						|
*)	echo "current time mismatch:$v1|$v2|" >&2 ;;
 | 
						|
esac
 | 
						|
unset v1 v2
 | 
						|
 | 
						|
printf "%(%x %X)T\n" $(( $SECS - 3600 ))
 | 
						|
 | 
						|
printf -v v1 "%(%F %r)T\n" $SHELLSTART
 | 
						|
printf -v v2 "%(%F %r)T\n" -2
 | 
						|
 | 
						|
case $v1 in
 | 
						|
$v2)	;;
 | 
						|
*)	echo "shell start time and -2 possible mismatch|$v1|$v2|" >&2 ;;
 | 
						|
esac
 | 
						|
unset v1 v2
 | 
						|
 | 
						|
printf "current time: %(%F %r)T\n" $SECS
 | 
						|
 | 
						|
printf "epoch time: %(%F %r %z)T\n" 0
 | 
						|
printf "random time: %(%F %r %z)T\n"  $SECS
 | 
						|
 | 
						|
printf "local time: %(%a %b %e %H:%M:%S %Z %Y)T\n" $SECS
 | 
						|
 | 
						|
# test fieldwidth, justification, precision
 | 
						|
printf "%-40.50(%a %b %e %H:%M:%S %Z %Y)T date-style time\n" $SECS
 | 
						|
 | 
						|
# test fieldwidth, justification, precision, embedded parens
 | 
						|
printf "%-40.50(%x (foo) %X)T date-style time\n" $SECS
 |