tmux
화면 출력을 고유한 파일에 저장하는 사용자 정의 키 바인딩을 원합니다 .
이게 효과가 있어
bind-key S capture-pane -S -99999 \; save-buffer /tmp/tmux.txt \; delete-buffer
그러나 이스케이프 및 괄호 여부는 그렇지 않습니다 $
.
bind-key S capture-pane -S -99999 \; save-buffer $(mktemp --suffix=.txt) \; delete-buffer
bind-key S capture-pane -S -99999 \; save-buffer $(date +'/tmp/tmux-%s.txt') \; delete-buffer
이것이 가능합니까?
답변1
$()
셸에서 평가되므로 셸 명령으로 실행해야 합니다.
bind-key S capture-pane -S -99999 \; run-shell 'tmux save-buffer $(date +"/tmp/tmux-%s.txt")' \; delete-buffer
중요한 부분은 다음과 같습니다.
run-shell 'tmux save-buffer $(date +"/tmp/tmux-%s.txt")'
이는 쉘을 시작하고, $(date..)
명령을 확장하고, 버퍼를 파일에 저장하도록 tmux에 지시합니다.