tmux에서 실행 한 명령의 히스토리를 어떻게 볼 수 있습니까?


26

12.04 서버를 실행 중이며 bash에 history를 입력하면 bash에 입력 한 대부분의 명령이 표시되지만 tmux 세션에서 입력 한 명령은 표시되지 않습니다.

세션을 종료 한 후 Ubuntu 12.04 서버의 tmux 세션 내에서 실행 한 명령의 내역을 어떻게 볼 수 있습니까?


그래서 bash 터미널의 tmux에서 실행 한 명령의 내역을보고 싶습니까?
Radu Rădeanu

당신은 쉘이 여전히 실행되고 TMUX의 bash는 내부의 역사를 참조 말했다 경우, 당신은 몇 가지 설정을 추가해야합니다 ~/.bashrc~/.bash_login실행하는 동안 파일에 기록 APPEND를 만들기 위해.
demure

@demure 나는 tmux 내부에있는 bash 쉘의 역사를 언급하고 있지만 tmux와 tmux에서 실행중인 bash 쉘은 더 이상 실행되지 않습니다.
Chris Magnuson

@ RaduRădeanu bash에서 tmux를 입력하고 새 bash 셸을 가져 와서 ls를 실행 한 다음 종료하면 이제 첫 번째 bash 셸로 돌아 왔으며 history 명령은 tmux를 실행했지만 ls를 실행하지 않았다는 것을 보여줍니다.
Chris Magnuson

답변:


26

여러 bash 쉘에서 bash 히스토리를 보존해야합니다. 이렇게하려면 ~/.bashrc파일에 다음 줄이 있어야 합니다.

# avoid duplicates..
export HISTCONTROL=ignoredups:erasedups

# append history entries..
shopt -s histappend

# After each command, save and reload history
export PROMPT_COMMAND="history -a; history -c; history -r; $PROMPT_COMMAND"

출처 : /unix/1288/preserve-bash-history-in-multiple-terminal-windows


나는 12.04 Ubuntu 서버에서 이것을 지쳤습니다. 이제 히스토리 명령을 입력 할 때마다 히스토리 수가 40 씩 증가합니다. 쉘에 히스토리를 세 번 입력했으며 마지막 명령 번호는 1305에서 1345로 1385에서 1425로 바뀌 었습니다. 왜 이런 일이 발생합니까?
Chris Magnuson

1
@ChrisMagnuson 이것은 나에게 일어나지 않습니다. 어쨌든 이것은 원래 질문과 다른 질문입니다. 따라서 질문하기 버튼 을 사용하는 것을 망설이지 마십시오 .
Radu Rădeanu

zsh + tmux에서는 잘 보입니다 : ': 1490862052 : 0; ls # 1 : 1490862057 : 0; ls # 2 : 1490862068 : 0; tail ~ / .zsh_history : 1490862083 : 0; ls # 3 : 1490862087 : 0; 꼬리 ~ /.zsh_history # 2 '는 각 명령이 다른 창에서 실행되는 것을 고려한 것입니다.
avp
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.