Перечислите строки, одинаковые во второй части, но различающиеся в первой части

Я не верю, что можно (достаточно легко )просто создать FIFO (, также известный как "именованный канал" ), который изменяет проходящие через него данные. Вероятно, было бы немного проще фильтровать данные, когда они выходят из дальнего конца канала, так как с[...] | sed 's/^\s*//'(флаг gлишний, поскольку «начало строки» может встречаться только один раз в строке. ).

0
18.05.2019, 04:03
1 ответ
 awk -F, -vD='D' '$4==D && !seen[$0]++' data
  • -F,отдельное поле по,
  • -vD='D'назначьте желаемый 4-й столбец переменной D, измените 'D'на желаемое значение 4-го столбца.
  • $4==D && !seen[$0]++вывести строку, если 4-й столбец совпадает с переменной Dи ранее не встречался.

Если после ,есть пробелы, используйте вместо этого:

 awk -vFS=', *' -vD='D' '$4==D && !seen[$0]++' data
2
28.01.2020, 02:30

Теги

Похожие вопросы