Рейтинг:0

Использование awk с номером столбца в скрипте bash

флаг cn

Я использую такую ​​​​команду, чтобы получить некоторые соединения из nf_conntrack:

awk '($3 == "tcp") && ($6 != "TIME_WAIT") && ($10 == "dport=1234")' /proc/net/nf_conntrack

Как использовать эту команду внутри сценария bash, а также добавить к ней аргумент сценария? Если я просто сделаю:

awk '($3 == "tcp") && ($6 != "TIME_WAIT") && ($10 == "dport=$1")' /proc/net/nf_conntrack

Это будет означать, что все $1,$3,$6,... являются аргументами скрипта и терпят неудачу. Как мне отделить аук номера столбцов из аргументов скрипта, чтобы правильно использовать эту команду?

Рейтинг:1
флаг ru

Это не обязательно, но эмпирическим правилом является явное объявление переменных, которые вы хотите передать из вашей среды в аук

awk -v myvar="dport=$1" '($3 == "tcp") && ($6 != "TIME_WAIT") && ($10 == myvar)' /proc/net/nf_conntrack

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.