원격 호스트에서 스크립트를 실행할 때 잘못된 문자를 방지하는 방법은 무엇입니까?

원격 호스트에서 스크립트를 실행할 때 잘못된 문자를 방지하는 방법은 무엇입니까?

현재 시나리오: 저는 Solaris 5.10 시스템에서 Unix 셸 스크립트를 실행하려고 하는데 스크립트의 작업 중 하나는 다른 Linux 호스트(ssh 키 쌍이 설정된 상태)로 ssh를 실행하고 일련의 명령을 실행하는 것입니다.

질문: 스크립트는 제대로 실행되지만 원격 상자에서 실행되는 모든 명령이 내 Solaris 터미널에 올바르게 표시되지 않습니다. 스크립트가 실행 중인 모든 단계를 표시하려면 set -x를 사용합니다. 어떤 이유로 모든 원격 단계는 화면 중앙에서 인쇄를 시작하고 때로는 원격 서버에서 실행되는 명령이 길면 실행된 전체 명령이 표시되지 않습니다. 나는 가능한 가장 넓은 모니터를 가지고 있으며 터미널 너비는 문제가 되지 않습니다. 내 Solaris와 Linux 시스템 사이의 기본 터미널 너비에 호환성 문제가 있습니까? 내 질문이 명확해지기를 바랍니다.

답변1

경우에 따라 네트워크 연결을 통해 실행할 때(특히 를 사용하여 권한이 변경되는 경우 sudo) 터미널 크기 정보가 원격 시스템에 전파되지 않습니다. 물론 이런 일이 발생하면 일부 프로그램은 언제 출력 형식을 지정하고 줄 바꿈 등을 해야 하는지 혼란스러워합니다.

일반적으로 사용할 수 있습니다resize프로그램은 터미널의 너비를 요청하고 이를 수정합니다. 원격 컴퓨터에서 실행할 수 있으며 터미널에 크기를 묻는 이스케이프 문자를 보낸 다음 실제 크기에 대한 원격 컴퓨터의 아이디어를 업데이트합니다.

관련 정보