dotfiles/.config/polybar/scripts/info-usbtoserial.sh
2024-01-29 08:31:23 -06:00

45 lines
861 B
Bash

#!/bin/sh
usbtoserial_print() {
devices=$(find /dev/ -name "ttyUSB*")
counter=0
for device in $devices; do
device_name=$(udevadm info --query=property --export --name "$device" | grep ID_MODEL_FROM_DATABASE | cut -d "'" -f 2 | cut -d ' ' -f 1)
if [ $counter -gt 0 ]; then
printf ", %s" "$device_name"
else
printf "#1 %s" "$device_name"
fi
counter=$((counter + 1))
done
printf '\n'
}
path_pid="/tmp/polybar-usbtoserial.pid"
case "$1" in
--update)
pid=$(cat $path_pid)
if [ "$pid" != "" ]; then
kill -10 "$pid"
fi
;;
*)
echo $$ > $path_pid
trap exit INT
trap "echo" USR1
while true; do
usbtoserial_print
sleep 30 &
wait
done
;;
esac