Mario, I fear, I misunderstood your question (or you misunderstood my answer ;-) )
"echo $SHLVL" returns always "1" after a "su - ...", but another value after a "su ..." (without th dash). I thought, this was what you would like to see. There are several mechanism, to distinguish between the primary login shell and a "su ..." shell: 1. "ps -f" $ ps -f UID PID PPID C STIME TTY TIME CMD hubert 8163 8162 0 06:58 pts/2 00:00:00 -bash hubert 23237 8163 0 08:54 pts/2 00:00:00 ps -f $ su - root # ps -f UID PID PPID C STIME TTY TIME CMD root 23567 8163 0 08:56 pts/2 00:00:00 /bin/su - root 23569 23567 1 08:56 pts/2 00:00:00 -bash root 23602 23569 0 08:56 pts/2 00:00:00 ps -f 2. "logname" vs. "id" # logname hubert # id uid=0(root) gid=0(root) groups=0(root) Hope this helps. Regards Hubert > -----Ursprüngliche Nachricht----- > Von: "Marco Bosisio" <marco_bosi...@it.ibm.com> > Gesendet: 03.03.09 14:00:17 > An: LINUX-390@VM.MARIST.EDU > Betreff: Re: Which user env. variable tell me that it is in "s u - " mode ? > Hi Hubert, > your suggestion works fine running for nested scripts, I created 3 > script testa -> testb -> testc like this : > > lx1iard0:~ # cat testa > #!/bin/bash > echo "testa => SHLVL="$SHLVL > sh /root/testb > exit > > > lx1iard0:~ # echo $SHLVL > 1 > > lx1iard0:~ # sh testa > testa => SHLVL=2 > --testb => SHLVL=3 > ----testc => SHLVL=4 > > > But.... the variable $SHLVL is always 1 after a "su - " : > > it32...@lx1iard0:~> echo $SHLVL > 1 > it32...@lx1iard0:~> su - > Password: > lx1iard0:~ # echo $SHLVL > 1 > lx1iard0:~ # > > > I customized the profile.local and it launch a script_xxx at login. When > use 'su - ' I would like that the new user does not execute the > script_xxx again. > > > Cordiali saluti / Best regards > > Marco Bosisio IBM Italia S.p.A. > > > > > > > > Hubert Kleinmanns <hub...@kleinmanns.eu> > Sent by: Linux on 390 Port <LINUX-390@VM.MARIST.EDU> > 03/03/2009 11.32 > Please respond to > Linux on 390 Port <LINUX-390@VM.MARIST.EDU> > > > To > LINUX-390@VM.MARIST.EDU > cc > > Subject > Re: Which user env. variable tell me that it is in "s u - " mode ? > > > > > > > Hi Marco, > > try: > > echo $SHLVL > > The value is incremented for each new sub shell - so it will be "1" for > login shells (which you get with "su - ..." > > Regards > Hubert > > > > -----Ursprüngliche Nachricht----- > > Von: "Marco Bosisio" <marco_bosi...@it.ibm.com> > > Gesendet: 03.03.09 11:12:04 > > An: LINUX-390@VM.MARIST.EDU > > Betreff: Which user env. variable tell me that it is in "su - " mode > ? > > > > Hi, > > do you know wich user environment variable I have to test (executing > > a bash script) to know when I am in "su -" (switch user mode) ? > > > > > > Reading variables provided by "env" command then testing $TERM I > > am able to know if not a Linux terminal : > > .. > > ....... > > # We can only execute on a terminal SSH / Telnet , not executed if > > secondary console Linux/zVM > > if [[ "$TERM" != "xterm" ]] ; then exit > > fi > > ...... > > > > I would like to do the same when the script is executed in a user > > logged in "su - " mode... > > > > Thanks in advance. > > > > Cordiali saluti / Best regards > > > > Marco Bosisio IBM Italia S.p.A. > > > > ---------------------------------------------------------------------- > > For LINUX-390 subscribe / signoff / archive access instructions, > > send email to lists...@vm.marist.edu with the message: INFO LINUX-390 or > visit > > http://www.marist.edu/htbin/wlvindex?LINUX-390 > > > > -- > Hubert Kleinmanns > Beratung / Schulung / Projektleitung > > Chairman der WG "WebSphere MQ and Business Integration" in der GSE, deutsche > Region. > > Tel.: +49 (0) 60 78 / 7 12 21 > Fax: +49 (0) 60 78 / 7 12 25 > Mobil: +49 (0) 178 / 6 97 22 54 > Web: www.kleinmanns.eu > GSE: www.gsenet.de > > ---------------------------------------------------------------------- > For LINUX-390 subscribe / signoff / archive access instructions, > send email to lists...@vm.marist.edu with the message: INFO LINUX-390 or > visit > http://www.marist.edu/htbin/wlvindex?LINUX-390 > > > > IBM Italia S.p.A. > Sede Legale: Circonvallazione Idroscalo - 20090 Segrate (MI) > Cap. Soc. euro 400.001.359 > C. F. e Reg. Imprese MI 01442240030 - Partita IVA 10914660153 > Società soggetta all?attività di direzione e coordinamento di > International Business Machines Corporation > > (Salvo che sia diversamente indicato sopra / Unless stated otherwise > above) > > ---------------------------------------------------------------------- > For LINUX-390 subscribe / signoff / archive access instructions, > send email to lists...@vm.marist.edu with the message: INFO LINUX-390 or visit > http://www.marist.edu/htbin/wlvindex?LINUX-390 > -- Hubert Kleinmanns Beratung / Schulung / Projektleitung Chairman der WG "WebSphere MQ and Business Integration" in der GSE, deutsche Region. Tel.: +49 (0) 60 78 / 7 12 21 Fax: +49 (0) 60 78 / 7 12 25 Mobil: +49 (0) 178 / 6 97 22 54 Web: www.kleinmanns.eu GSE: www.gsenet.de ---------------------------------------------------------------------- For LINUX-390 subscribe / signoff / archive access instructions, send email to lists...@vm.marist.edu with the message: INFO LINUX-390 or visit http://www.marist.edu/htbin/wlvindex?LINUX-390