#windows #serial-port
#Windows #последовательный порт
Вопрос:
Я работаю с множеством встроенных устройств, которые используют последовательные порты для подключения к моей машине с Windows. Я могу запустить mode
, чтобы узнать, какой COM-порт я только что подключил (или отключил), но сложно прокручивать все выходные данные и находить, что изменилось.
Есть ли более простое решение, использующее командную строку?
Ответ №1:
Я написал следующий небольшой скрипт, который запускает mode
и сортирует результаты. Запустите его, он останется открытым, и вы можете нажать Enter
в любое время, чтобы обновить список. Да, это просто, но вы можете настроить его так, как считаете нужным: [*]
#!/bin/bash
#
# List COM ports on one line
#
# SYNOPSIS:
# ListPorts.sh
MODE="/c/Windows/System32/mode.com"
list_ports() {
PORTS_W=$(${MODE} | grep "Status for device COM" | awk '{ print $4 }' | sed s/:// | sort -V )
echo ${PORTS_W}
}
while [ 1 ] ; do
echo -n "Available COM ports are "
list_ports
echo -n "Hit [Enter] to refesh the list or ^C to quit: "
read
done
[*] Оставлено в качестве упражнения для читателя: просто используйте sed
для обрезки строки, а не awk ... | sed ...
пример вывода:
Available COM ports are COM4 COM9 COM18 COM19
Hit [Enter] to refesh the list or ^C to quit: