Tôi đã chơi với es vài ngày trước và nó (như RC) có một tính năng / trò chơi mà nó chỉ chạy tập lệnh khởi động ( .esrc) khi đăng nhập. Cách thông thường để chạy mã trong mỗi phiên tương tác là đặt mã đó vào %prompthàm.
Tất nhiên, không có %promptchức năng nếu es -lchưa bao giờ được chạy.
Vì vậy, câu hỏi: làm thế nào để bạn thiết lập môi trường đăng nhập khi bạn truy cập thông qua gdm hoặc tương tự, chỉ có nguồn .profile (hoặc .xprofile, .xsession, v.v.)? Điều tốt nhất tôi nghĩ ra là:
if [ -f "$HOME/.esrc" ]; then
eval "`es -l <<-x
sh <<<'export -p'
x`"
fi
Mà có vẻ ... kinh hoàng. Bất kỳ phương pháp tốt hơn?
eslà vỏ đăng nhập của tôi. Xin lỗi nếu tôi không làm rõ điều đó. Nhưng shell đăng nhập không chạy trong phiên X trước khi thiết bị đầu cuối được khởi chạy, ít nhất là theo như tôi biết.
bash, không es. Nhưng khi tôi mở một cửa sổ terminal mới, nó sẽ chạy bashnhư một shell đăng nhập.
eskhông phải là vỏ đăng nhập của bạn. Những gì về thiết lậpalias es='es -l'trong.bashrc?