expect
시작 시 실행하고 싶은 스크립트 가 있습니다 . 무엇보다도 일부 직렬 포트를 구성합니다. systemd를 통해 실행하면 다음과 같은 결과가 나타납니다.
couldn't read file "/dev/tty": no such device or address while executing exec /bin/stty -F /dev/ttyACM0 ... </dev/tty
systemd
터미널을 제어하지 않고 서비스를 프로세스로 실행하기 때문인 것 같은데 , 이 문제를 해결할 수 있는 방법이 있나요? 호출된 스크립트에 참조가 없습니다 /dev/tty
.
stty -F /dev/ttyACM0 ...
답변1
stty
구성할 tty를 지정하는 방법에는 를 사용하거나 -F /dev/your_tty
에서와 같이 stdin을 리디렉션하는 두 가지 방법이 있습니다 < /dev/your_tty
.
두 가지를 동시에 사용하는 것은 의미가 없습니다. < /dev/tty
마지막에 제거하면 됩니다.
편집하다
편집 후: 이제 문제는 왜 호출이 stty
처음에 with로 변환되는지입니다.< /dev/tty