Попытка передать вывод lsof -Pi в geoiplookup

Ищите способ передать второй столбец вывода в geoiplookup, в идеале на той же строке, но не обязательно. Это лучшее, что я могу собрать. Это полезно, но результаты geoiplookup, к сожалению, ниже списка соединений. Я хотел получить более интегрированные результаты. Если кто-то может предложить улучшения, они будут приветствоваться.

ns () {
  echo ""
  while sleep 1; do
    lsof -Pi |
    grep ESTABLISHED |
    sed "s/[^:]*$//g" |
    sed "s/^[^:]*//g" |
    sed "s/://g" |
    sed "s/->/\t/g" |
    grep -v localdomain$ |
    tee >(for x in `grep -o "\S*$"`; do geoiplookup $x | sed "s/GeoIP.*: /\t/g"; done)
  done
}

Результаты в настоящее время выглядят примерно так:

<Port>    <URL or IP if no reverse available #1>
<Port>    <URL or IP if no reverse available #2>
    <geoiplookup trimmed result #1>
    <geoiplookup trimmed result #2>

1 ответ

Решение

Я получил отличный ответ здесь.

Другие вопросы по тегам