4. Užívateľské prostredie UNIXu 4.1 Shell ako základné užívateľské rozhranie 4.2 Zložky shellu 4.3 C - shell 4.4 Shell ako programovací jazyk
Prihlásenie užívateľa do systému 1. aktivácia shellu 2. Nastavenie definovaných premenných (PATH, HOME, PS1, TERM...) 3. Vykonanie syst. súbor /etc/profile 4. Prepnutie do home_directory a vykonanie súboru .profile 5. Výpis promptu prac. shellu: % - csh $ - sh # - superuser > - tcsh
Odhlásenie užívateľa zo systému ! ! spôsob odhlásenia závisí od typu shellu a jeho užívateľského nastavenia CTRL-D logout exit
Funkcie shellu Základný interprét príkazov CLI (Commmand Line Interpret) Programovací jazyk pre tvorbu scriptov CLP (Command Programming Language) generátor príkazových procedúr Interprét príkazových procedúr
Základné charakteristiky Umiestnenie výkonných programov /bin, /sbin, /usr/bin, /usr/sbin Rozdelenie shellov: klasické znakové (sh, csh, ksh, tcsh, rsh, bash,...) vizuálne (vsh) shelly, pseudoshelly (rsh - remote shell, msh -mail shell, mush - mail users’s shell)
Iné rozdelenie: login shell - spustí sa užívateľovi ako prvý, má výsadné postavenie. Pred vypísaním promptu vykoná obsah skriptu /etc/profile, potom hľadá v domovskom adresári súbory csh_profile, csh_login alebo .profile, pri odhlasovaní .logout „ostatné shelly“
Iné rozdelenie: Interaktívny shell - má štandardný vstup a štandardný výstup napojený na terminál (číta príkazy priamo zadávané užívateľom a užívateľovi vypisuje správy na terminál) Pri spustení int. shellu odlišného od login shellu sa v dom. adr. hľadá súbor .cshrc Neinteraktívny shell - číta príkazy zo súboru
Typy shellov sh - Bourne shell, prompt : $ csh - C-shell, prompt: % štandard csh - C-shell, prompt: % C-jazyk, nekompatibilný s sh mechanizmus histórie mechaniznus aliasov riadenie práce vsh - Visual shell Práca formou výberu z ponúk tcsh - Toronto shell, prompt: > rozšírenie csh
ksh - Korn shell, prompt: $ tcsh - pokračovanie opätovné vyvolanie, editovanie a vykonanie zadaných príkazov,dopĺňanie mien súborov, príkazov, užívateľov ksh - Korn shell, prompt: $ rozšírenie sh mechanizmus histórie a aliasov, editácia príkazového riadku bash - Bourne Again shell, prompt: $ rsh - Restricted shell prostredie s obmedzenými možnosťami a právami príkaz cd, nastavenie premenných PATH, SHELL, ENV..., presmerovanie výstupu ostatné - ash, zsh, wish, rksh, mesh
Shell - interpret príkazov základná funkcia - aktivácia procesov proces - vykonávaný program aktivácia procesov: interaktívny režim (príkaz, skupina príkazov) neinteraktívny režim (dávkový - formou skriptu) podporné funkcie (činnosti ): substitúcia mien súborov a premenných presmerovanie súborov a I/O zariadení riadenie užív. prostredia práca s návratovými kódmi programové kanály a ich používani
Súbor .csh - príklad :echo "servus" > /dev/tty set history=1000 savehist=1000 alias ls ls -alF alias l "\ls -a" set autocorrect set correct=all set prompt="%d%#" #sched 21:55 echo Uz je cas ist domov\!\! alias cwdcmd "\ls" set path=(. $HOME/bin /usr/ucb /bin /usr/bin stty pass 8
set history=1000 savehist=1000 alias ls ls -alF alias rm 'rm -ri ' Súbor .cshrc - príklad set history=1000 savehist=1000 alias ls ls -alF alias rm 'rm -ri ' alias arc "telnet archie.univie.ac.at" alias t "talk toth_g" alias eunet "ftp ftp.eunet.sk" set prompt="%/%#" #newmail -i 15 eo #echo "Dosle a ulozene spravy v schrankach :" #messages Mail/pef #messages Mail/received #messages Mail/tothova biff y
Súbor .profile - príklad tty -s if test $? = 0 then stty dec crt fi PATH=$HOME/bin:/usr/ucb:/bin:/usr/bin:/usr/local:/usr/new:/usr/hosts: MAIL=/usr/spool/mail/$USER tset -n -I export TERM MAIL PATH biff n
Zložky shellu 1. Príkazy 2. Premenné 3. Špeciálne znaky pefstud$prikaz arg0 arg1 arg2 arg3 … arg, kde argn je argument voľby - prepínač, arg je názov súboru pefstud$ls -lg /home/student/rn94 /var1 externé (bežné) interné (vstavané)