Как отключить все интернет-устройства, кроме указанного?

Как отключить все интернет-устройства, кроме указанного?

Я ищу способ вывести из строя все остальные устройства, кроме указанного.

Я думаю, это было бы похоже на grep вывода ifconfig, чтобы затем извлечь все имена устройств, кроме указанного, а затем использовать эти имена в качестве входных данных для команды ifconfig $DEV down.

решение1

Устарело ifconfig, ipвместо него используйте .

Вы можете использовать этот простой скрипт:

#!/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

Это называется:

./script.sh <device>

Например с eth0:

./script.sh eth0

При вызове без параметров выводит отчеты Device parameter missing!.

Связанный контент