общая служба интрасети для отображения IP-адреса

Я собираюсь снова проголосовать за короткие ответы, но вот один:

awk '{if ($0 ~ /A/) {printf 1} else {printf 0}}' datafile

Здесь вам понадобится printf, так как awk напечатает символ новой строки. Если вы хотите/нужны запятые, вы можете добавить их.

0
27.08.2021, 02:34
2 ответа

Это можно сделать разными способами:

ping -4  $(hostname) 

Pinging DESKTOP-MYHOSTNAME [10.4.0.10] with 32 bytes of data:
Reply from 10.4.0.10: bytes=32 time<1ms TTL=64
hostname -i 

10.4.0.10 192.168.230.1 192.168.1.100 0.0.0.0 [other IPv6 addresses]
netstat -nt | tail -n +2 | tr -s ' ' | awk 'BEGIN{FS=" |:"}{print $4}' | uniq

Local
0.0.0.0
10.4.0.10
127.0.0.1
192.168.1.100
192.168.230.1

Вы также должны иметь возможность запускать route -n, который также покажет вам, как вещи маршрутизируются между интерфейсами.

1
27.08.2021, 04:45

Этот небольшой скрипт pythonфактически возвращает то же самое, что иhttps://ifconfig.me

Вы можете разместить его на веб-сервере с помощью pythonи вызвать с помощью curl.

#!/usr/bin/env python3
import os
import html

def header():
    print("Content-type: text/plain")
    print()
def main():
    header()
    print(html.escape(os.environ["REMOTE_ADDR"]))

if __name__ == "__main__":
    main()
1
27.08.2021, 07:06

Теги

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