[unix] es 환경을 어떻게 설정합니까?

나는 지난 며칠 동안 es 와 함께 놀고 있었고 , rc와 같은 것은 .esrc로그인 시 시작 스크립트 ( ) 만 실행하는 기발한 기능을 가지고 있습니다. 각 대화식 세션에서 코드를 실행하는 일반적인 방법은 해당 코드를 %prompt함수 에 넣는 것입니다 .

물론, 실행 된 적이 없다면 %prompt기능 es -l이 없습니다.

따라서 질문 : gdm 또는 이와 유사한 것을 통해 올 때 .profile (또는 .xprofile, .xsession 등) 만 로그인 환경을 어떻게 설정합니까? 내가 생각해 낸 최선은 다음과 같습니다.

if [ -f "$HOME/.esrc" ]; then
    eval "`es -l <<-x
        sh <<<'export -p'
    x`"
fi

끔찍한 것 같습니다. 더 나은 접근 방법이 있습니까?



답변

아무도 진정한 답을 찾을 수 없으므로 여기 끔찍한 해킹이 있습니다. 일부 쉘 (예 : * rxvt)에는 로그인 쉘을 강제 실행할 수있는 설정이 있습니다. 따라서에서에서 .Xdefaults비슷한 것을 추가 할 수 있습니다.

urxvt256c-ml:loginShell: true

즉, urxvt256c-ml시작 하는 모든 터미널에는 기본적으로 로그인 쉘이 있습니다.

그게 전혀 도움이 되나요?


답변