Le Sat, Jan 11, 2025 at 10:49:50AM -0500, Greg Wooledge a écrit :
> https://mywiki.wooledge.org/BashPitfalls#pf47
> "It's a feature."
> 
 -- how do we work around this nonsense?

I've alredy noticed this, but never stictly tested them as:

   for row in k{:v1{:v2{:{:{:,},},},:{:{:,},},},:{:{:,},},}; do
       IFS=: read k v <<<"$row";
       printf "%-20s %s\n" "row='$row'" "k='$k', v='$v'";
   done
   row='k:v1:v2:::'     k='k', v='v1:v2:::'
   row='k:v1:v2::'      k='k', v='v1:v2::'
   row='k:v1:v2:'       k='k', v='v1:v2:'
   row='k:v1:v2'        k='k', v='v1:v2'
   row='k:v1:::'        k='k', v='v1:::'
   row='k:v1::'         k='k', v='v1::'
   row='k:v1:'          k='k', v='v1'
   row='k:v1'           k='k', v='v1'
   row='k:::'           k='k', v='::'
   row='k::'            k='k', v=''
   row='k:'             k='k', v=''
   row='k'              k='k', v=''

Thanks for driving my attention to this *feature*!

-- 
 Félix Hauri  -  <fe...@f-hauri.ch>  -  http://www.f-hauri.ch

Reply via email to