Используйте wlan0 или eth0 в разных скриптах / терминале - PullRequest
0 голосов
/ 22 мая 2019

У меня есть установка Debian с использованием eth0 и wlan0.Для всех приложений, которые я хочу использовать eth0, за исключением одного скрипта, который я хочу использовать wlan0.

Есть ли возможность, например, в терминальной сессии или, например, в сценарии оболочки, принудительно использовать wlan0 для этого конкретного сценария?

Большое спасибо за вашу помощь

1 Ответ

0 голосов
/ 22 мая 2019

Да, по умолчанию довольно просто использовать eth0, а затем, если вам нужно использовать wlan0 для одного запуска, просто передайте wlan0 в качестве аргумента командной строки.Вы также должны проверить, что значение, которое вы используете, равно либо eth0, либо wlan0, либо вы должны считать аргумент недействительным.

Короткий сценарий, реализующий эту логику, будет:

#!/bin/sh

iface=${1:-eth0}  ## use eth0 by default or use the first argument

## if the iface entered is not eth0 or wlan0, handle error
if [ "$iface" != "eth0" ] && [ "$iface" != "wlan0" ]
then
    printf "error: invalid interface '%s'\n" "$iface"
    exit 1
fi

printf "using: %s\n" "$iface"  ## output interface being used

Пример использования / Вывод

$ sh useiface.sh
using: eth0

$ sh useiface.sh wlan0
using: wlan0

$ sh useiface.sh eth1
error: invalid interface 'eth1'

Вы можете видеть выше, когда пользователь пытается вызвать сценарий с eth1, который не считается допустимым, и сценарий выдает ошибку ивыходы.Вы можете настроить в соответствии с вашими потребностями.

...