У меня есть файлы с данными, но некоторые строки содержат данные в неправильном порядке:
name cat
value 7.25 label X
value 1.13 label 2
value 15.75 label 1
name dog
label 1 value 20.00
label X value 9.00
label 2 value 1.10
name cow
value 1.10 label 2
value 8.25 label X
value 19.00 label 1
name sheep
value 1.11 label 2
value 8.80 label X
value 19.00 label 1
name mouse
value 1.13 label 2
value 8.00 label X
value 19.00 label 1
name donkey
value 1.05 label 2
value 9.50 label X
value 16.00 label 1
name dog
label 1 value 20.00
label X value 9.00
label 2 value 1.10
Как видите, некоторые строки начинаются с метки *, а некоторые строки начинаются со значения *, я буду sh чтобы поменять местами порядок строк, когда строка начинается со значения 'value', поэтому все строки (игнорируя строку, содержащую имя) имеют следующий формат: 'Label * value *'
Желаемый результат:
name cat
label X value 7.25
label 2 value 1.13
label 1 value 15.75
name dog
label 1 value 20.00
label X value 9.00
label 2 value 1.10
name cow
label 2 value 1.10
label X value 8.25
label 1 value 19.00
name sheep
label 2 value 1.11
label X value 8.80
label 1 value 19.00
name mouse
label 2 value 1.13
label X value 8.00
label 1 value 19.00
name donkey
label 2 value 1.05
label X value 9.50
label 1 value 16.00
name dog
label 1 value 20.00
label X value 9.00
label 2 value 1.10
Я пытался написать al oop, опуская строки, начинающиеся со значения 'value', однако я не уверен в следующих шагах.
Как я могу добиться этого?