'tmux send-keys' 명령이 표시되지만 출력을 인접한 창으로 보내는 방법이 있습니까?

'tmux send-keys' 명령이 표시되지만 출력을 인접한 창으로 보내는 방법이 있습니까?

tmux 세션에서 한 창의 일부 출력을 병렬 창으로 보내는 빠른 방법이 있는지 알아보려고 합니다.

예를 들어 왼쪽 창(예: 0.0)에 있고 명령 출력을 pwd오른쪽 창(예: 0.1)으로 보내려는 경우입니다. 이를 수행하는 빠른 방법이 있습니까?

답변이 있지만 오랫동안 검색했지만 아무것도 얻지 못한 경우 미리 사과하십시오 tmux send-keys -t right 'some text'.

대신 인접한 창에 출력을 표시하고 싶은데, 이를 수행할 수 있는 방법이 있습니까?

답변1

인접한 창에 출력을 표시하고 싶습니다.

다른 창에 연결된 터미널의 파일 이름( tty인쇄 내용)을 알고 있으면 해당 파일에 쓸 수 있습니다. 예:

pwd >/dev/pts/1

하지만 이것만은디스플레이거기 문자; 창에서 실행되는 모든 프로그램과 상호 작용이 없습니다. "디스플레이"라는 단어를 사용했지만 이것이 원하는 것인지 잘 모르겠습니다. 이 솔루션은 tmux 없이도 작동합니다.


다른 창에서 호출하려는 일부 명령의 출력을 stdin으로 보내려면 명명된 파이프를 사용하십시오.

mkfifo foo
pwd >foo

이제 다른 셸(다른 창)로 이동하여 다음 내용을 읽습니다 foo.

<foo whatever

이것은 또한 tmux에 의존하지 않습니다.


출력을 다른 창에 붙여넣으려면(예: 해당 창의 셸에 있는 새 명령의 일부로 만들기 위해):

  1. pwd소스 창에서 정상적으로 호출합니다 .
  2. 복사 모드로 이동하여 출력을 복사합니다. 마우스 지원을 사용하면 마우스 왼쪽 버튼을 누른 채 드래그하는 것만으로도 충분합니다. 버튼을 놓으면 선택한 텍스트가 자동으로 버퍼에 저장됩니다.
  3. 대상 창으로 이동합니다.
  4. paste-buffer( prefix]기본값)을 사용하여 저장된 텍스트를 붙여넣습니다 .

관련 정보