Подсчет сетевых интерфейсов в Bash

Я столкнулся с той же проблемой. У меня был установлен xserver -xorg -input -synaptics. Я удалил его, и проблема была решена. После удаления кнопка естественной прокрутки работает нормально.

4
07.11.2019, 18:31
1 ответ

Возможно использование комбинации grepи wcили использованиеawk

Первый подход , с использованиемgrep:

ifconfig | grep "^tun" | wc -l

Это направляет вывод ifconfigчерез grep, сопоставляет все строки, начинающиеся со строки tun(. Это достигается с помощью индикатора привязки ^), а затем используется wcдля подсчета строк, которые grepвыводится как совпадающее.

Как указал @schaiba, это возможно даже без обращения к wcблагодаря опции grep-c, которая сама подсчитает все совпавшие строки:

ifconfig | grep -c "^tun"

Второй подход , использующийawk:

ifconfig | awk 'BEGIN {tuns=0}; /^tun/ {tuns++}; END {print tuns}'

Это направит вывод на awk. Программа awk, заключенная в одинарные кавычки '... ', делает следующее:

  • в начале(BEGIN {... })инициализировать внутреннюю переменную tuns, которую мы будем использовать для бухгалтерского -ведения, как 0
  • в основном цикле для каждой встречаемой строки, начинающейся со строки tun(, указанной регулярным выражением /^tun/), увеличивайте счетчикtuns
  • после завершения ввода, (END {... }), вывести результирующее значениеtuns
12
27.01.2020, 20:44

Теги

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