사용 가능한 직렬 포트를 확인하고 싶습니다. 다음을 수행하려는 경우 스크립트는 어떻게 수행되어야 합니까?
- ttyUSBx에서 사용 가능한 장치 확인
- 장치가 연결되어 있으면 -> 첫 번째 프로그램을 실행하십시오.
- 그 후 1개 이상의 장치가 연결되어 있으면 두 번째 프로그램을 실행하십시오.
답변1
이를 수행하는 방법에는 여러 가지가 있습니다. ls
or가 필요하지 않은 것은 다음과 같습니다 grep
.
hasTTYUSB=0
moreThanOne=0
for i in /dev/ttyUSB*
do
if [ "$hasTTYUSB" -eq 1 ]; then
moreThanOne=1
fi
hasTTYUSB=1
done
if [ "$hasTTYUSB" -eq 1 ]; then
# run first program here
fi
if [ "$moreThanOne" -eq 1 ]; then
# run second program here
fi
답변2
시스템 호출 ls /dev/ grep tty를 사용해 보고 출력을 평가해 보세요.
serialPortList=$(ls /dev/ | grep tty)
for s in $serialPortList
do echo $s
done
이제 echo 대신 인스턴스에서 수행하려는 작업을 입력하세요.