Bash в сочетании с sed
:
#!/bin/bash
cnt=0;
while IFS=, read a b c;
do
echo -n $a ; cnt=$[cnt+1];
sed -e 's/[^,]*,\([^,]*\).*/\1/' file |
sed -e 's/\([[:upper:]]\)//g'|
sed -e $cnt'q;d'|
tr '\n' ' ' ;
echo $c;
done < file
производит:
R1C1 123abc R1C3
R2C1 456defg R2C3
R3C1 789hijkl R3C3
Я не верю, что проблема в том, как осуществляется переход, но что время, указанное в команде дата --set="20 MAR 2016 1:00:50"
, неоднозначно.
Т.е. это время происходит дважды; сначала перед выходом из DST, а затем снова, когда часы совершили скачок назад на час. К сожалению, я не уверен, как можно определить, какое наступление этого времени желательно (можно ли включить часовой пояс, чтобы его разобрать?).