Подсчет количества полей с использованием только AWK и без других команд, таких как uniq

Здесь слишком много вопросов, которые нужно решить, но это не поместится в комментарий, поэтому я буду публиковать его здесь, пока вопрос не будет удален.

  1. Ваш /bootне был смонтирован во время обновления, поэтому работающее ядро ​​не имеет доступа к требуемым модулям.

  2. efibootmgr показывает «команда не найдена», потому что вы ее не установили.

  3. Ваш /bootне был смонтирован для обновления, потому что у вас нет /bootв вашем/etc/fstab(или если он есть, он неверен ).

0
29.01.2021, 18:27
2 ответа

Немного неясно, что вы хотите (, так как uniqудалит только смежные дубликаты ), однако предположим, что вы хотите напечатать все уникальные поля -в записях независимо смежности можно использовать

awk '!seen[NF]++ {print NF}' file.txt
3
18.03.2021, 22:33

A BEGIN rule is executed once only, before the first input record is read.

Likewise, an END rule is executed once only, after all the input is read.

https://www.gnu.org/software/gawk/manual/html_node/Using-BEGIN_002fEND.html

. 1

$ awk 'END {print NF}' file.txt 
2

. 2

$ awk 'END {print NF " NF"}' file.txt
2 NF

. 3

$ awk 'END {print NF,NR}' file.txt
2 3

. 4

$ awk 'END {print NF " NF, " NR " NR"}' file.txt
2 NF, 3 NR
0
18.03.2021, 22:33

Теги

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