su를 사용할 때 나노 화면 텍스트가 깨지는 문제를 해결하는 방법 - admin

su를 사용할 때 나노 화면 텍스트가 깨지는 문제를 해결하는 방법 - admin

제1터미널의 su - admin내 사용자 계정에서 , brew update수정 등을 합니다 .bashrc.

내 사용자 세션에서 런타임에 창 크기를 변경해도 nano텍스트가 전혀 손상되지 않는 것으로 나타났습니다. 창 크기가 완벽하게 조정됩니다.

그러나 새 터미널 창을 열고 를 실행한 후 su - admin크기 nano를 조정하려고 하면 텍스트가 뒤섞여 복구할 수 없습니다. control-l작동하지 않습니다.

관리자 계정으로 로그인한 상태에서 터미널을 열고 실행하면 nano창 크기를 조정하는 데 아무런 문제가 없습니다. 텍스트가 뒤섞이지 않습니다.

반대에서도 같은 문제가 발생합니다. 내 관리자 계정에서 을(를) 사용 su - user하고 실행 nano하고 크기를 조정하면 텍스트가 깨집니다.

여기서 무슨 일이 일어나고 있고 어떻게 해결할 수 있는지 아시나요?

나노 4.9를 사용하고 있습니다.

답변1

이 질문에 선택된 답변이 있다는 것을 알고 있지만 설명서를 읽는 경우 필요한 것은 화면 새로 고침입니다. 다음을 사용하십시오.

^L

이것은

ctrl + L

어떤 이유로 버퍼가 손상된 경우 해당 버퍼를 몇 번 클릭해야 합니다.

답변2

터미널 에뮬레이터는 터미널 에뮬레이터로 시작된 셸에 창 변경 신호(SIGWINCH)를 보냅니다. 셸은 이를 자식에게 전달해야 합니다. 그러나 다른 사용자 계정으로 전환하면(사용 su또는 다른 방법으로) 다른 사용자로 실행 중이기 때문에 해당 셸에 신호를 보낼 수 없습니다. 따라서 su'd 셸과 여기에서 실행되는 모든 프로그램은 실제 창 크기가 변경되었다는 사실을 무시하고 이전 창 크기를 계속 사용합니다.

새 창 크기를 사용하도록 세션을 완전히 업데이트하려면 이 셸에서 실행 su해야 합니다 . eval $(resize)환경 변수 COLUMNS 및 LINES(이것이 eval필요한 이유)와 터미널 설정( stty rows및 명령과 동일 stty columns)을 업데이트합니다. 대부분의 경우 resize이 섹션이 필요하지 않아도 eval...충분 하지만 일부 프로그램에는 환경 변수도 필요할 수 있습니다.

답변3

OS X에서 사용하는 것이 login이 문제에 대한 해결책입니다.


$ login
로그인 이름: your username
비밀번호: your password
마지막 로그인: dd HH:MM:SS on ttys000
$ whoami
사용자 이름

감사합니다 사용자님공주존재하다애플 스택 교환

관련 정보