Uwaga na applnk-2.2.0-1 [zemsta baszystów]

Arkadiusz Miskiewicz arekm at maven.pl
Thu Feb 24 21:38:26 CET 2011


On Thursday 24 of February 2011, Tomasz Pala wrote:
> On Thu, Feb 24, 2011 at 19:31:55 +0100, Arkadiusz Miskiewicz wrote:
> > * /bin/zsh
> > [arekm w t400 ~]$ unset COKOLWIEKTEST
> > [arekm w t400 ~]$ /bin/zsh
> > [arekm w t400 ~]$ [ "${COKOLWIEKTEST+X}" = "X" ] && echo set  || echo unset
> > zsh: exit 1
> > unset
> 
> SOA#1
> 
> ~:  unset COKOLWIEKTEST
> ~:  [ "${COKOLWIEKTEST+X}" = "X" ] && echo set  || echo unset
> unset

Ok ale co tu niby testujesz?

daj unset COKOLWIEKTEST; export COKOLWIEKTEST i wtedy testuj

> ...cóż to za cudaczna składnia? Wymyślona przez tę samą ekipę, która
> stosuje test ==?

Portable składnia, autoconf jej używa od zarania dziejów.

> 
> ~:  export COKOLWIEKTEST
> ~:  [ "${COKOLWIEKTEST:+X}" = "X" ] && echo set || echo unset
> unset
> 
> > zsh zachowuje się inaczej niż pdksh, bash
> 
> Przy niepoprawnym kodzie ma prawo. Ale szczególnie mnie śmieszy ten
> test, wymyślony chyba przez GNU/bashów, którzy nigdy nie słyszeli o
> [ "$COKOLWIEL" ].

Twój test nie zadziała dla A=. Powie, że nieustawione mimo, że jest ustawione 
na pusty string.

-- 
Arkadiusz Miśkiewicz        PLD/Linux Team
arekm / maven.pl            http://ftp.pld-linux.org/


More information about the pld-devel-pl mailing list