lilalo
view l3bashrc @ 74:a10db759e587
Перешёл на новый формат приглашения.
Ура Ура Ура!
Теперь в нём есть информация
о номере строки в истории (history),
текущем каталоге (pwd),
времени появления приглашения (time)
Давно пора было!
Ура Ура Ура!
Теперь в нём есть информация
о номере строки в истории (history),
текущем каталоге (pwd),
времени появления приглашения (time)
Давно пора было!
author | devi |
---|---|
date | Thu Feb 09 18:47:04 2006 +0200 (2006-02-09) |
parents | 0ffdebbccfce |
children | 0da83215839a |
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#\!#$?#$UID#$$#$(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 }