Да, можно управлять коммутатором через команды Bash, используя утилиту sshpass для автоматической авторизации на устройстве.
Для автоматизации закрытия неиспользуемых портов на сотне коммутаторов Huawei с использованием скрипта на Bash и утилиты sshpass, можно использовать следующий подход:
1. Создайте файл со списком IP-адресов всех коммутаторов Huawei.
2. Напишите скрипт на Bash, который будет циклично проходить по каждому IP-адресу, подключаться к коммутатору по SSH с помощью sshpass и выполнять необходимые команды для закрытия неиспользуемых портов.
3. Пример скрипта на Bash:
```bash
#!/bin/bash
# Читаем список IP-адресов из файла
while IFS= read -r ip_address; do
# Подключаемся к коммутатору по SSH с помощью sshpass и выполняем необходимые команды
sshpass -p password ssh user@$ip_address "command_to_close_unused_ports"
done < list_of_ip_addresses.txt
```
4. Убедитесь, что у вас установлены пакеты `sshpass` и `expect` (для обработки ввода пароля).
5. Запустите скрипт и он будет циклично подключаться к каждому коммутатору и закрывать неиспользуемые порты.
Если команды передаются как одна строка, а не по одной, можно использовать следующий подход:
1. Используйте `echo` для передачи окончания строки (`\n`) после каждой команды, чтобы разделить их.
Пример:
```bash
#!/bin/bash
# Читаем список IP-адресов из файла
while IFS= read -r ip_address; do
# Подключаемся к коммутатору по SSH с помощью sshpass и выполняем необходимые команды
sshpass -p password ssh user@$ip_address "command_to_close_unused_port1 \n command_to_close_unused_port2 \n command_to_close_unused_port3"
done < list_of_ip_addresses.txt
```
Таким образом, скрипт будет отправлять каждую команду на новой строке, что позволит правильно выполнить их на коммутаторе.