Package: ksh Version: 93u+20120801-2 Severity: important $ for s in '' ba da k mk z; do sh=${s}sh echo -n $sh: seq 4 |${s}sh -c 'unset v; while read n; do [ -n "${v+set}" ] && echo -n "$v "; v="$n"; done; echo "$v"' done sh:1 2 3 4 bash:1 2 3 4 dash:1 2 3 4 ksh:4 mksh:1 2 3 4 zsh:1 2 3 4
`[ -n "${v+set}" ] ` must be true on 2nd iteration and later in all *sh, but only ksh returns the false on all iteration. -- -- Name: SATOH Fumiyasu @ OSS Technology Corp. (fumiyas @ osstech co jp) -- Business Home: http://www.OSSTech.co.jp/ -- GitHub Home: https://GitHub.com/fumiyas/ -- PGP Fingerprint: BBE1 A1C9 525A 292E 6729 CDEC ADC2 9DCA 5E1C CBCA