Нужна ваша поддержка ниже. Пожалуйста, помогите
Если для столбца 5 задано значение INV, то следует учитывать только столбец 1 и вынимать дубликаты / идентичные строки / значения из столбца 1, а затем помещать минимальное значение столбца 6 в столбец 7 и помещать максимальное значение в столбец 8, а затем необходимо вычесть значения столбца 7 из столбец 8 и затем плюс один, чтобы привести и сохранить окончательный результат в столбце 9 и столбце 11.
Также необходимо пропустить / удалить столбец (столбец 5 и столбец 6) в выходном файле
Например, во входном файле 27AAACH1458C1ZZ 6 раз, но нужно учитывать только 5 строк, так как одна строка в столбце 5 имеет значение REVERSED, которое нам необходимо отбросить (необходимо учитывать строки, где в столбце 5 есть значения «INV»).
Таким образом, среди 7 строк в столбце 6 минимальное значение будет «IN27201800023182», а максимальное - «IN27201800024289», поэтому необходимо указать минимум в столбце 7 и максимум в столбце8.
После этого необходимо учитывать последние 8 цифр из столбца (7 и 8) и вычитать столбец 7 из столбца 8. Затем нужно добавить / плюс 1 к результату вычитания и сохранить в столбце 9 и столбце 11. Необходимо пропустить / удалить столбец 5 и столбец 6 в выходном файле.
a|b|c|d|e|f|g|h|i|j|k
27AAAC8C1ZZ|042018|||INV|IN27201800023521|||||
27AAAC8C1ZZ|042018|||INV|IN27201800024289|||||
27AAAC8C1ZZ|042018|||INV|IN27201800023356|||||
27AAAC8C1ZZ|032018|||REVERSED|IN27201800022431|||||
27AAAC8C1ZZ|042018|||INV|IN27201800023400|||||
27AAAC8C1ZZ|042018|||INV|IN27201800023182|||||
вывод должен быть
a|b|c|d|Min|Max|result|j|result
27AAAC8C1ZZ|042018|||N27201800023182|IN27201800024289|1108||1108
Код я пытаюсь найти максимальное и минимальное значение, но получаю неправильный вывод.
awk 'BEGIN{OFS=FS="|"} {if ($5=="INV"){ getline; min=$6;max=$6}}
{(min>$6)?min=$7:"";(max>$6)?"":max=$8}
END{print min, max}' input.txt
Неверный вывод
IN27201800023182|