
Estou procurando uma maneira de desativar todos os outros dispositivos, exceto o fornecido.
Eu acho que seria algo como usar o grep na saída ifconfig para extrair todos os nomes de dispositivos, exceto o especificado, e então usar esses nomes como entrada para um ifconfig $DEV down
comando.
Responder1
O ifconfig
está obsoleto, use ip
em seu lugar.
Você pode usar este script simples:
#!/bin/bash
if [ -z "$1" ]
then
echo "Device parameter missing!"
exit 1
fi
devices=`ip a | grep UP | cut -d " " -f2 | tr -d ":" | grep -v "lo" | grep -v "$1"`
for dev in $devices
do
ifdown $dev
done
É chamado como:
./script.sh <device>
Por exemplo com eth0:
./script.sh eth0
Se chamado sem parâmetro, reporta Device parameter missing!
.