나는 놀고 있었다영어최근에는 rc와 마찬가지로 .esrc
로그인 시에만 시작 스크립트를 실행하는 특이한/기능이 있습니다( ). 각 대화형 세션에서 코드를 실행하는 일반적인 방법은 코드를 %prompt
함수에 넣는 것입니다.
물론, 한 번도 실행된 적이 없다면 기능이 없습니다 %prompt
.es -l
따라서 질문은: gdm 또는 유사한 소스 전용 .profile(또는 .xprofile, .xsession 등)을 통해 로그인할 때 로그인 환경을 어떻게 설정합니까? 내가 생각 해낸 최고는 다음과 같습니다.
if [ -f "$HOME/.esrc" ]; then
eval "`es -l <<-x
sh <<<'export -p'
x`"
fi
이건...끔찍해 보이는군요. 더 좋은 방법이 있나요?
답변1
아무도 실제 답을 갖고 있지 않기 때문에 여기 제 끔찍한 꿀팁이 있습니다. 일부 셸(예: *rxvt)에는 로그인 셸을 강제 실행할 수 있는 설정이 있습니다. 그래서 당신은 .Xdefaults
다음과 같은 것을 추가할 수 있습니다
urxvt256c-ml:loginShell: true
이는 urxvt256c-ml
실행하는 모든 터미널에 기본적으로 로그인 셸이 있음을 의미합니다.
도움이 되었나요?
답변2
수년이 지난 후 내 자신의 질문에 답하면서 이제 gnome-session은 로그인 셸에서 환경 변수를 추출하고 이에 대해 dbus에 알리는 마법을 수행하는 것처럼 보이지만 .profile은 실행되지 않습니다.
안타깝게도 다음과 같은 이유로 긴 문자열을 포함하는 마음에 들지 않는 항목(2023년) 내보내기도 거부합니다.