스크립트 출력을 /dev/tty1로 리디렉션하고 출력을 파일로 캡처

스크립트 출력을 /dev/tty1로 리디렉션하고 출력을 파일로 캡처

내 Raspberry Pi의 작은 화면에 항상 표시되는 텍스트 출력을 콘솔에 표시하고 싶습니다.

다음 코드는 텍스트 출력을 표시합니다.

cd /home/pi/python_test_scripts_linux && sudo nice -n -20 /home/pi/python_test_scripts_linux/test_wrapper.py > /dev/tty1

이제 화면에서 보는 동안 출력을 캡처하고 싶습니다. "tee"를 시도했지만 화면에 텍스트가 표시되지 않거나 파일로 캡처되지 않습니다.

cd /home/pi/python_test_scripts_linux && sudo nice -n -20 /home/pi/python_test_scripts_linux/test_wrapper.py | tee /dev/tty1 /tmp/capture.txt

/dev/tty1출력을 파일로 캡처하는 동시에 화면에서 볼 수 있도록 스크립트 출력을 리디렉션하려면 어떻게 해야 합니까 ?

업데이트 1:

아래 답변을 바탕으로 "스크립트"를 사용해 보았습니다. 불행히도 작동하지 않습니다.

script -c "cd /home/pi/python_test_scripts_linux && sudo nice -n -20 /home/pi/python_test_scripts_linux/test_wrapper.py > /dev/tty1" /home/pi/python_test_scripts_linux/report.html

업데이트 2:

또한 /dev/tty1에 있는 파일로 출력을 리디렉션하려고 시도했지만 둘 중 하나도 작동하지 않았습니다.

sudo tail -F /home/pi/python_test_scripts_linux/report.html > /dev/tty1 &
cd /home/pi/python_test_scripts_linux && sudo nice -n -20 /home/pi/python_test_scripts_linux/test_wrapper.py > /home/pi/python_test_scripts_linux/report.html 

답변1

명령의 출력을 저장하려면 스크립트 명령을 사용하십시오.

script -c "your command" /tmp/capture.txt

출력은 tty와 Capture.txt로 전송됩니다.

tty1이 실행 중인 콘솔이 아닌 경우 다음을 실행할 수 있습니다.

tail -F /tmp/capture.txt 

결과는 해당 tty에서도 얻을 수 있습니다.

답변2

입력해 주셔서 감사합니다. 출력을 버퍼링하므로 Python 스크립트에서는 작동하지 않습니다.

이를 통해 티와 함께 ​​사용할 수 있습니다.

python -u ./myscript.py | tee /dev/tty1 /tmp/a.txt

관련 정보