Как подсчитать количество строк, в которых есть данные в файле с разделением по трубам?

После некоторой игры и тестирования я смог заставить его работать с опцией -j1 в настройках эксперта.

-j1, --dump-mbr-in-the-end Use dd to dump the MBR (total 512 bytes, i.e. 446 bytes (executable code area) + 64 bytes (table of primary partitions) + 2 bytes (MBR signature; # 0xAA55) = 512 bytes) after disk image was restored. This is an insurance for some hard drive has different numbers of cylinder, head and sector between image was saved and restored.
4
16.07.2018, 09:37
2 ответа
awk -F '|' 'length($3) { ++count } END { print count }' < input

На входе выборки это приводит к:

2

Он работает, устанавливая разделитель полей в вертикальную черту, а затем увеличивая countна строки, которые имеют непустое -значение в 3-м поле. В конце файла печатается окончательный count.

8
27.01.2020, 20:47

Использование программных инструментов:

cut -d '|' -f 3 input | wc -w

Это предполагает, что столбец 3 состоит только из одного слова без пробелов. Если могут быть пробелы, это должно работать:

cut -d '|' -f 3 data | grep -c.
3
27.01.2020, 20:47

Теги

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