Приемы профессиональной работы в UNIX


АНАЛИЗ ПРИМЕРА ФАЙЛА НАСТРОЙКИ СИСТЕМЫ


Файл .profile, как следует из его названия (профилирование - формирование контура, очертаний), функционирует для установки и инициализации параметров системы, которые вам нужны. Сюда входит установка терминалов, определение переменных, запуск программ и конфигурирование исполняющей системы. Пример файла настройки можно найти в описании команды profile(4). Рассмотрим .profile, используемый автором. Мы включили его на столь ранней стадии, чтобы предложить вам коснуться понятий, которые более подробно раскрываются далее в этой книге. Не заботьтесь о понимании работы каждой части примера. Пока что просто сделайте мысленную отметку возможностей. Ваш .profile может быть проще и почти наверняка будет другим.

1 # @(#).profile v1.0 Defines "home" on the system Author: Russ Sage 3 CHOICE="ushort" 4 case $CHOICE in 5 ufull) PS1="`uuname -l`> ";; 6 ushort) PS1="`uuname -l|cut -c1-3`> ";; 7 graphic) PS1="^[[12mj^[[10m ";; 8 esac 10 LOGNAME=`logname` 11 HOME=`grep "^$LOGNAME:" /etc/passwd | cut -d: -f6` 12 MAIL=/usr/spool/mail/$LOGNAME 13 export LOGNAME HOME MAIL

15 HA=$HOME/adm 16 HBB=$HOME/bbs 17 HB=$HOME/bin 18 HD=$HOME/doc 19 HE=$HOME/etc 20 HM=$HOME/mail 21 HP=$HOME/proj 22 HSR=$HOME/src 23 HSY=$HOME/sys 24 HT=$HOME/tmp 25 HDIRS="HA HBB HB HD HE HM HP HSR HSY HT" 26 export $HDIRS HDIRS

28 P=/usr/spool/uucppublic/$LOGNAME; export P

30 CDPATH=.:..:$HOME:$HDIRS 31 PATH=.:/bin/:/usr/bin:/etc:$HOME/bin 32 SHELL=`grep "^$LOGNAME:" /etc/passwd|cut -d: -f7` 33 export CDPATH PATH SHELL

35 case "`basename \`tty\``" in 36 console) eval `tset -m ansi:ansi -m :\?ansi -r -s -Q`;; 37 tty00) eval `tset -m ansi:ansi -m :\?ansi -r -s -Q`;; 38 tty01) eval `tset -m ansi:ansi -m :\?ansi -r -s -Q`;; 38 esac

41 echo TERM = $TERM 42 TERMCAP=/etc/termcap 43 export TERM TERMCAP

45 HZ=20 46 TZ=PST8PDT 47 export HZ TZ

49 umask 0022

51 echo "\nTime of this login : `date`" 52 lastlog -l

54 RED="^[[31m" 55 GREEN="^[[32m" 56 YELLOW="^[[33m" 57 BLUE="^[[34m" 58 CYAN="^[[35m"

60 case "`date|cut -d' ' -f1`" in 61 Mon) echo "$RED";; 62 Tue) echo "$GREEN";; 63 Wed) echo "$YELLOW";; 64 Thu) echo "$BLUE";; 65 Fri) echo "$CYAN";; 66 esac




- Начало -  - Назад -  - Вперед -