Zsh Mailing List Archive
Messages sorted by:
Reverse Date,
Date,
Thread,
Author
Re: All login shells are interactive?
- X-seq: zsh-users 5436
- From: "Nadav Har'El" <nyh@xxxxxxxxxxxxxxxxxxx>
- To: Philippe Troin <phil@xxxxxxxx>
- Subject: Re: All login shells are interactive?
- Date: Sun, 13 Oct 2002 23:48:40 +0200
- Cc: alnesbit@xxxxxxxxxxxxxxxx, zsh-users@xxxxxxxxxx
- Hebrew-date: 8 Heshvan 5763
- In-reply-to: <871y6u1ava.fsf@xxxxxxxxxxxxxxxx>
- Mailing-list: contact zsh-users-help@xxxxxxxxxx; run by ezmlm
- References: <Pine.LNX.4.44.0210141115510.26276-100000@xxxxxxxxxxxxxxxxxxx> <871y6u1ava.fsf@xxxxxxxxxxxxxxxx>
On Sun, Oct 13, 2002, Philippe Troin wrote about "Re: All login shells are interactive?":
> alnesbit@xxxxxxxxxxxxxxxx writes:
> > That's what the FAQ says, but I don't understand how this can be true.
> > Surely you can have a non-interactive login shell, like, say
> >
> > zsh -l -c 'echo Non-interactive login shell'
>
> Yes indeed. And it is used by at least gnome-session and CDE when you
> start an X session.
Right. I even use this trick myself: my ~/.xsession file starts with a
#!/bin/zsh -l
line, so that it (and everything in it) gets run after zsh has read my
~/.zprofile, including all my enviroment variables (e.g., my PATH).
This is why when I wanted my .zprofile to print a welcome message only
for interactive login shells, I did something like this in .zprofile:
# We print this message only in a shell which is both interactive and a login
# shell. Alternatively we can move this message to zshrc, inside a test if $-
# contains l (i.e., a login shell).
case $- in
*i*)
print "*** $ZSH_NAME $ZSH_VERSION, $VENDOR $MACHTYPE"
print -P "Welcome to %m, %D{%A}, %D{%e %B %Y}, %t.";;
esac
--
Nadav Har'El | Sunday, Oct 13 2002, 8 Heshvan 5763
nyh@xxxxxxxxxxxxxxxxxxx |-----------------------------------------
Phone: +972-53-245868, ICQ 13349191 |Always remember you're unique, just like
http://nadav.harel.org.il |everyone else.
Messages sorted by:
Reverse Date,
Date,
Thread,
Author