Я использую 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}