bug-bash
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Bash 4.2 printf %()T seems to ignore TZ


From: Dennis Williamson
Subject: Bash 4.2 printf %()T seems to ignore TZ
Date: Tue, 15 Feb 2011 21:49:16 -0600

When I ran make test I noticed a discrepancy in a couple of the times
output during the printf tests. I pulled out the relevant section and
this is what I get:

LC_ALL=C
LANG=C
SECS=1275250155
export TZ=EST5EDT
printf "%()T\n" $SECS
printf "%(%e-%b-%Y %T %Z)T\n" $SECS  # added %Z

result:

15:09:15
30-May-2010 15:09:15 CDT

printf.right says it should be "16:09:15" in both cases. Note that the
%Z I added outputs CDT.

The next part of the test that compares date +%s passes.

Also:

$ LC_ALL=C LANG=C TZ=EST5EDT date -d @$SECS
Sun May 30 16:09:15 EDT 2010
$ TZ=EST5EDT date -d @$SECS
Sun May 30 16:09:15 EDT 2010
$ date -d @$SECS
Sun May 30 15:09:15 CDT 2010

Running in Ubuntu 9.10

Machine: i686
OS: linux-gnu
Compiler: gcc
Compilation CFLAGS:  -DPROGRAM='bash' -DCONF_HOSTTYPE='i686'
-DCONF_OSTYPE='linux-gnu' -DCONF_MACHTYPE='i686-pc-linux-gnu'
-DCONF_VENDOR='pc' -DLOCALEDIR='/usr/local/share/locale'
-DPACKAGE='bash' -DSHELL -DHAVE_CONFIG_H   -I.  -I. -I./include
-I./lib   -g -O2
uname output: Linux emperor 2.6.31-21-generic #59-Ubuntu SMP Wed Mar
24 07:28:56 UTC 2010 i686 GNU/Linux
Machine Type: i686-pc-linux-gnu

Bash Version: 4.2
Patch Level: 0
Release Status: release



reply via email to

[Prev in Thread] Current Thread [Next in Thread]