tmux.conf 파일에서 환경 변수 사용


12

tmux.conf 파일에서 환경 변수를 사용할 수 있습니까? 환경 변수에 대한 기본 경로를 설정하려고합니다. 현재 내가 시도하는 것은 다음과 같습니다

set -g default-path $MYVAR

또한 $ MYVAR이 이미 설정되어 있는지 확인하고 싶습니다.

if($MYVAR == "") set-environment -g MYVAR /somepath/

어떤 아이디어?

답변:


12

그렇습니다. .tmux.conf파일 에서 쉘 변수를 확장하는 것이 가능해 보입니다. 필요하지는 않지만 따옴표로 묶는 것이 좋습니다. 지금 상태 표시 줄 옵션 으로이 작업을 성공적으로 수행 할 수있었습니다.

# In ~/.tmux.conf:
set -g status_left "$MYVAR etc: "

$ export MYVAR="Shell stuff"
$ tmux

구성의 'if'또는 다른 제어 구조에 대해서는 모르지만있을 수 있습니다.


이것을 tmux 스크립트 파일에서 작동시킬 수 없습니다. $ MYVAR이 설정되어 있고 스크립트를 실행하면 실패합니다. set -g default-path "$ MYVAR"split-window -h 윈도우를 분할하지만 default-path는 $ MYVAR로 설정되지 않았습니다
Digital Powers

2
ok tmux를 실행하기 전에 환경 변수를 설정하면 tmux.conf 파일에서 사용할 수 있습니다. set-environment를 사용하여 tmux.conf에서 환경 변수를 설정하거나 tmux에있는 후 tmux.conf를 다시로드하면 내가 설정 한 새 변수를 사용하게됩니다. 왜 그런지 알아?
Digital Powers

tmux 내에서 실행되는 쉘은 tmux의 하위 프로세스입니다. 이러한 환경 내부의 변경 일들이 전달 될 다시하지 않을 까지 TMUX 부모 프로세스 라인. tmux가 시작한 쉘의 자식이되기 때문에 다른 방식으로 만 작동합니다. config reload는 부모 프로세스의 새로운 자식을 시작한다는 점에서 비슷하다고 가정합니다.
Caleb
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.