lilalo
view l3bashrc @ 72:0ffdebbccfce
Убрал парочку лишних переменных в коде l3-agent
Более подробно описаны поля в README
Заготовка для будущего приглашения в l3bashrc
Более подробно описаны поля в README
Заготовка для будущего приглашения в l3bashrc
| author | devi | 
|---|---|
| date | Sat Feb 04 00:54:17 2006 +0200 (2006-02-04) | 
| parents | d499fa3b2af1 | 
| children | a10db759e587 | 
 line source
     1 #!/bin/sh
     4 _l3_start()
     5 {
     6     L3_TTY=`tty` 
     7     proc_on_the_term=`w | grep "${L3_TTY##/dev/}" | awk '{print $8;}'`
     8     # freeBSD: 
     9     [ -n "$bsd" ] && \
    10     proc_on_the_term=`w | grep "${L3_TTY##/dev/tty}" | awk '{print $6;}'`
    12     if [ -n "$proc_on_the_term" ] && echo $proc_on_the_term | grep -qv script
    13     then
    14         _l3_start_session
    15         _l3_run_script
    16     else
    17         _l3_env
    18         _l3_prompt
    19     fi
    20 }
    22 _l3_env()
    23 {
    24     trap _l3_close_session 2
    25     trap _l3_close_session EXIT
    26     true
    27 }
    29 _l3_prompt()
    30 {
    31 #export PS1='\[v2_$(date +%s)_$?_$PWD_\!_\033[1024D\033[K\][\u@\h:\W]\$ '
    32     export PS1='\[`
    33     a="$?";
    34     HIDDEN=$([ "$a" = 0 ] || echo -n ^"$a")$(echo -n _${UID}_)$(echo -n _$$_)$(date\
    35         +"%j$(cat ${LMHOME}/lab 2>/dev/null) %H:%M:%S");
    36     echo $HIDDEN`\033[50D\033[K\][\u@\h:\W]\$ '
    37 }
    39 _l3_start_session()
    40 {
    41     export L3_SESSION_ID=${L3_TTY##*/}-$$
    42     export L3_HOME=~/.lilalo/
    43     mkdir -p $L3_HOME
    45     uname -a | grep -qi bsd && bsd=yes
    46     parent=`cat /proc/$PPID/cmdline 2> /dev/null`
    47     system=`uname -rs`
    48     login_from=`who | grep "${tty##/dev/}" | awk '{print $6;}' | tr -d '()'`
    49     #[ -n "$bsd" ] && login_from="" #FIXME!
    50     start_time=`date +%s`
    51     hostname=`hostname -f 2> /dev/null`
    52     [ -n "$bsd" ] && hostname=`hostname`
    54     cat <<INFO > $L3_HOME/$L3_SESSION_ID.info
    55 <session>
    56     <local_session_id>$L3_SESSION_ID</local_session_id>
    57     <hostname>$hostname</hostname>
    58     <user>$USER</user>
    59     <uid>$UID</uid>
    60     <login_from>$login_from</login_from>
    61     <tty>$tty</tty>
    62     <system>$system</system>
    63     <parent>$parent</parent>
    64     <ppid>$PPID</ppid>
    65     <pid>$$</pid>
    66     <start_time>$start_time</start_time>
    67 </session>
    68 INFO
    70     unset parent system login_from start_time hostname 
    71 }
    73 _l3_run_script()
    74 {
    75     uname -a | grep -qi bsd && bsd=yes
    76     flush="-f"                          #linux
    77     [ -n "$bsd" ] && flush="-t 0"       #freebsd
    78     exec script $flush -q $L3_HOME/${L3_SESSION_ID}.script
    79 }
    81 _l3_close_session()
    82 {
    83     ( 
    84         echo '<history>'
    85         history | sed 's/&/\&/; s/</\</g; s/>/\>/g'
    86         echo '</history>'
    87     ) >> $L3_HOME/$L3_SESSION_ID.info
    88 }
