다른 사람의 터미널에 제어 문자를 쓸 수 있나요?

다른 사람의 터미널에 제어 문자를 쓸 수 있나요?

나와 같은 많은 사람들은 터미널 에뮬레이터를 사용하여 동일한 AIX 6.1 서버에 로그인합니다. 이 터미널 에뮬레이터는 모니터에 쓰는 대신 특정 제어 문자로 래핑된 코드를 VBA 스크립트로 자동 해석하고 실행합니다. 그래서 장난으로 터미널에 쓰고 싶은 팝업 상자에 메시지를 표시하는 일련의 문자가 포함된 파일이 있습니다.

$ cat msgbox.txt  
*message box pops up*

하지만 누군가에게 글을 쓰면 효과가 사라집니다.

$ cat msgbox.txt | write *my other sesssion*

다른 회의에서:
Message from *myself* [*datetime*] \o 33 *code to show a msgbox* \o 33\<EOT>

여기서 "\o 33"은 ASCII 문자 27을 대체합니다. 쓰기를 통해 제어 문자를 보내는 것이 가능합니까, 아니면 다른 작업을 수행해야 합니까?

답변1

나는 AIX에 대해 잘 모르지만 대부분의 unice에서는 의도적으로 이를 수행할 수 없습니다. 다른 사람의 단말기에서는 읽거나 쓸 수 없으며, 거기에서 일어나는 일은 당신과 아무 관련이 없습니다. 계획 write에는추가 특권tty( 시스템에 따라 setuid root 또는 setgid ) 다른 사람을 너무 많이 방해하지 않도록 입력 내용을 신중하게 삭제합니다.

정말로 사용자 터미널에 제어 문자를 보내려면 루트 권한이 있어야 합니다.

답변2

cat사용 중인 tty장치 에 직접 연결 해야 합니다 . pty또한 해당 터미널이 귀하의 터미널과 동일한 문자를 수행하는지 확인하고 싶을 수도 있으며 tty 모드(개행 확장 참고)에 주의할 수도 있습니다.

관련 정보