Я использую Linux Mint 17 и делаю сценарий Conky . Я хотел бы, чтобы он отображал имя хоста маршрутизатора / точки доступа, к которой я подключен. Я просто не знаю команду Linux, чтобы получить ее.
Я использую Linux Mint 17 и делаю сценарий Conky . Я хотел бы, чтобы он отображал имя хоста маршрутизатора / точки доступа, к которой я подключен. Я просто не знаю команду Linux, чтобы получить ее.
Ответы:
РЕДАКТИРОВАТЬ: Просто понял, что запрос был о конкретном сценарии Conky после публикации этого ответа на основе Bash. Оставьте это здесь на всякий случай, если это будет полезно.
Имя хоста для роутера? Уверен, что это невозможно, потому что большинству шлюзов не назначено имя хоста или даже не выдано имя хоста. Но вы можете получить IP-адрес по route
каналу grep
и awk
вот так:
route | grep "default" | awk '{ print $2 }'
Это даст вам чистый IP-адрес маршрутизатора. Теперь, если вы хотите получить MAC-адрес, просто сделайте это, используя arp
эту команду, и снова смешайте с grep
и awk
там:
arp -a | grep $(route | grep "default" | awk '{ print $2 }') | awk '{ print $4 }'
И если вы хотите присвоить эти значения переменным Bash, просто сделайте это для IP-адреса маршрутизатора:
ROUTER_IP=$(route | grep "default" | awk '{ print $2 }')
И сделайте это для MAC-адреса:
ROUTER_MAC=$(arp -a | grep $(route | grep "default" | awk '{ print $2 }') | awk '{ print $4 }')
И тогда вы можете использовать эти присвоенные значения, ссылаясь на $ROUTER_IP
и $ROUTER_MAC
. Например, если вы запустили эти две переменные, просто запустите эти echo
команды из командной строки следующим образом:
echo $ROUTER_IP
echo $ROUTER_MAC
Имя хоста и ESSID
две разные вещи.
Но если вы используете Conky и хотите, чтобы ESSID
это было примерно так:
${offset 60}${font Ubuntu:size=12,weight:normal}${color1}Wlan0: ${wireless_essid wlan0}
Поскольку теперь мне ясно, вы на самом деле имеете в виду имя хоста внешнего IP-адреса точки доступа, а не путаницу имени хоста и ESSID.
Вы можете создать скрипт и поместить его в свой .conky/script
каталог
mkdir ~/.conky/scripts
gedit ~/.conky/scripts/hostname.sh
#!/bin/bash
dig +short myip.opendns.com @resolver1.opendns.com | xargs dig +short -x
Сделайте это исполняемым chmod +x ~/conky/scripts/hostname.sh
добавить к вашему .conkyrc
что-то вроде
${offset 60}${font Ubuntu:size=12,weight:normal}${color1}Hostname: ${execi 10000 ~/.conky/scripts/hostname.sh}