나는 지난 며칠 동안 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
시작 하는 모든 터미널에는 기본적으로 로그인 쉘이 있습니다.
그게 전혀 도움이 되나요?