EDIT: Apenas percebi que a solicitação era sobre um script específico do Conky depois postando esta resposta baseada em Bash. Deixá-lo aqui apenas no caso de ser útil.
Nome do host de um roteador? Tenho certeza de que isso não é possível, porque a maioria dos gateways não tem um nome de host atribuído nem mesmo fornece seu nome de host. Mas você pode obter o endereço IP usando route
canalizado através de grep
e awk
gostam disso :
route | grep "default" | awk '{ print $2 }'
Isso fornecerá a você o endereço IP bruto do roteador. Agora, se você quiser o endereço MAC, faça isso usando arp
e esse comando misturado com grep
e awk
lá também:
arp -a | grep $(route | grep "default" | awk '{ print $2 }') | awk '{ print $4 }'
E se você quiser atribuir esses valores a variáveis Bash, faça isso para o endereço IP do roteador:
ROUTER_IP=$(route | grep "default" | awk '{ print $2 }')
E faça isso para o endereço MAC:
ROUTER_MAC=$(arp -a | grep $(route | grep "default" | awk '{ print $2 }') | awk '{ print $4 }')
Você pode usar esses valores atribuídos referindo-se a $ROUTER_IP
e $ROUTER_MAC
. Como se você executasse essas duas atribuições de variáveis agora apenas execute esses comandos echo
da linha de comando da seguinte forma:
echo $ROUTER_IP
echo $ROUTER_MAC