Я не знаю, почему вы копируете вещи налево и направо. Просто
awk '{print "-" $2, substr($5,2,length($5)-2), "+", $4, ";"}' File1
я помещаю -
в начало и ;
в конце.
В промежутке мы печатаем
$ 2
, потому что хотим, чтобы все было как есть. $ 5
, которая представляет собой строку
без первого и последнего символа. Мы пропускаем первый символ
, начиная с позиции 2 (awk всегда был странным
по этому поводу), и опускаем последний символ, выбирая только подстроку
, которая на два символа короче , чем исходный $ 5
+
, потому что он нам нужен $ 4
Однако я не уверен, что все эти строковые функции относятся к GNU awk.