Вот тоже -литературный, немасштабируемый, сверхкороткий awk
версия:
awk '{printf "%s\n%s\n%s\n\n%s\n%s\n%s\n",$1,$3,$5,$2,$4,$6}'
Чуть больше (более двух символов), используя вложенные циклы (печатает дополнительный символ новой строки в конце):
awk '{for(i=1;i<=2;i++){for(j=i;j<=NF;j+=2)print $j;print ""}}'
Не печатает дополнительный символ новой строки:
awk '{for(i=1;i<=2;i++){for(j=i;j<=NF;j+=2)print $j;if(i==1)print ""}}'
Для сравнения , версия paxdiablo с удалением всех ненужных символов (1, 9 или 11 символов):
awk '{for(i=1;i<=NF;i+=2)print $i;print "";for(i=2;i<=NF;i+=2)print $i}'
Вот все-Баш версия:
d=(abc edf xyz rfg yeg udh)
i="0 2 4 1 3 5"
for w in $i
do
echo ${d[$w]}
[[ $w == 4 ]]&&echo
done
Пожалуйста, полностью см. Мой вопрос. «Дополнительные поля печатаются с помощью новой строки» – Vijay
Нетерпеливая мелочь, не так ли? :-) Я предполагаю, что теперь вы измените этот downvote, чтобы ответ был правильным. – paxdiablo
Спасибо за это :-) Привет. – paxdiablo