working directory" (vyvesti rabochij kata- log). Naprimer, esli vash rabochij katalog /usr/joe, to kogda vy vvedete: pwd vy poluchite: /usr/joe Vy vsegda dolzhny predstavlyat' sebya "zhivushchim" v vashem rabochem kataloge. 4.6.2. Vyvod soderzhimogo kataloga Vy mozhete vyvesti soderzhimoe kataloga komandoj lc. |ta komanda sortiruet imena fajlov i katalogov vnutri zadannogo kataloga, a zatem vyvodit ih. Esli imya kata- loga ne zadano, lc vyvodit soderzhimoe tekushchego kata- loga. Komanda lc imeet sleduyushchij format: lc klyuchi imya Naprimer, chtoby vyvesti soderzhimoe kataloga work, vve- dite: lc work Vyvod mozhet vyglyadet' primerno tak: accounts meetings notes mail memos todo Esli imya ne zadano, lc vyvedet soderzhimoe tekushchego kataloga. Naprimer, komanda: lc vyvedet imena fajlov i podkatalogov v etom kataloge. Sleduyushchie klyuchi upravlyayut rezhimami vyvoda informacii komandy lc: -a Vyvodit vse fajly v kataloge, vklyuchaya "skrytye" fajly ( imena kotoryh nachinayutsya s tochki, naprimer .profile i .mailrc). -r Vyvodit imena v obratnom alfavitnom poryadke. - 35 - -t Vyvodit imena fajlov, uporyadochivaya ih po date izmeneniya - snachala naibolee pozdnie (nedavno izmenyalis'). Pri ispol'zovanii vmeste s klyuchom -r snachala vyvodyatsya naibolee starye (davno ne izme- nyalis'). -R Vyvodit vse fajly i katalogi v tekushchem kataloge, plyus fajly i katalogi, kotorye stoyat "nizhe" po otnosheniyu k tekushchemu. "R" oznachaet "recursive" (rekursivno). -F Pomechaet katalogi kosoj chertoj ('/'), a vypolnyae- mye fajly zvezdochkoj ('*'). Komanda ls rabotaet takzhe, kak i komanda lc, za isklyu- cheniem togo, chto spisok fajlov vyvoditsya ne v neskol'ko stolbcov, a v odin. Komanda ls -l vyvodit polnyj spisok soderzhimogo kataloga, kotoryj vyglyadit primerno tak: total 501 drwxr-x--- 2 boris grp1 272 Apr 5 14:33 dir1 drwxr-x--- 2 enid grp1 272 Apr 5 14:33 dir2 drwxr-x--- 2 iris grp1 592 Apr 6 11:12 dir3 -rw-r----- 1 olaf grp2 282 Apr 7 15:11 file1 -rw-r----- 1 olaf grp2 72 Apr 7 13:50 file2 -rw-r----- 1 olaf grp2 1403 Apr 1 15:22 file3 Dlya kazhdogo fajla i kataloga ukazana sleduyushchaya informa- ciya (sleva napravo): - Kody dostupa - CHislo ssylok - Vladelec - Gruppa - Razmer v bajtah - Vremya poslednego izmeneniya - Imya fajla Pro informaciyu iz etogo spiska i o tom, kak izmenyat' kody dostupa, vy uznaete iz razdela 4.8 "Ispol'zovanie kodov dostupa fajla i kataloga". Bolee podrobno vyvod soderzhimogo kataloga opisan v raz- dele ls(C) v Spravochnom rukovodstve XENIX. - 36 - 4.6.3. Sozdanie kataloga Dlya sozdaniya podkataloga v vashem rabochem kataloge ispol'zujte komandu mkdir. Naprimer, chtoby sozdat' novyj katalog s imenem phonenumbers, prosto vvedite: mkdir phonenumbers Posle vypolneniya etoj komandy v vashem rabochem kataloge budet sushchestvovat' novyj pustoj katalog. 4.6.4. Udalenie kataloga Dlya udaleniya kataloga, raspolozhennogo v vashem rabochem kataloge, ispol'zujte komandu rmdir. Naprimer, chtoby udalit' katalog phonenumbers iz tekushchego kataloga, vvedite: rmdir phonenumbers Katalog phonenumbers dolzhen byt' pustym, dlya togo, chtoby vy smogli ego udalit'; eto predotvrashchaet katast- roficheskie udaleniya fajlov i katalogov. Esli vy hotite ispytyvat' sud'bu, to vy mozhete ispol'zovat' rekursiv- noe udalenie soderzhimogo kataloga s pomoshch'yu komandy rm, no zdes' eto opisyvat'sya ne budet. Dlya polucheniya dopol- nitel'noj informacii smotri razdel rm(C) v Spravochnom rukovodstve XENIX. 4.6.5. Pereimenovanie kataloga Dlya pereimenovaniya kataloga ispol'zujte komandu mv. Naprimer, chtoby pereimenovat' katalog little.dir v big.dir vvedite: mv little.dir big.dir |ta komanda prosto pereimenovyvaet katalogi; fajly ne peremeshchayutsya. 4.6.6. Peremeshchenie kataloga Komanda mv takzhe peremeshchaet katalogi. Ona imeet sleduyu- shchij format: mv staryj_katalog novyj_katalog gde staryj_katalog - eto katalog, kotoryj uzhe sushchest- vuet. Naprimer, chtoby peremestit' katalog /usr/joe/accounts v /usr/joe/overdue, vvedite: - 37 - mv /usr/joe/accounts /usr/joe/overdue Polnoe imya kataloga /usr/joe/accounts teper' /usr/joe/overdue. ?????.sh 3 "Sozdanie kopii kataloga" Komanda copy kopiruet katalogi. Ona imeet sleduyushchij format: copy klyuchi staryj_katalog novyj_katalog CHtoby skopirovat' vse fajly iz kataloga /usr/joe/memos v katalog /usr/joe/notes, vvedite: copy /usr/joe/memos /usr/joe/notes Fajly iz kataloga usr/joe/memos skopiruyutsya v /usr/joe/notes. Komanda copy imeet sleduyushchie klyuchi: -l Ustanavlivaet svyaz' kopii fajla (sozdayutsya fajly- ssylki) s ishodnym fajlom. -m Ustanavlivaet dlya kopij fajla tu zhe samuyu datu izmeneniya, chto i dlya ishodnogo fajla. -r Rekursivnoe kopirovanie kataloga, t.e. kopiruyutsya vse podkatalogi ukazannogo kataloga. 4.7. Peremeshchenie po fajlovoj sisteme Pri rabote s sistemoj XENIX polezno predstavlyat' sebe drevovidnuyu strukturu fajlov i katalogov. Kazhdyj kata- log predstavlyaet soboj mesto, v kotoroe i iz kotorogo vy mozhete peremeshchat'sya. V kazhdyj moment vremeni vy nahodites' v kakom-to meste v drevovidnoj strukture. |to mesto nazyvaetsya libo rabochim katalogom, libo teku- shchim katalogom. Komandy, ispol'zuemye dlya nahozhdeniya vashego mestopolozheniya i peremeshcheniya po drevovidnoj strukture, opisany nizhe. 4.7.1. Opredelenie mestopolozheniya Vashe tekushchee mesto v fajlovoj sisteme eto imya rabochego kataloga. Vy mozhete opredelit' eto imya komandoj pwd, kotoraya oznachaet "print working directory" (vyvesti rabochij katalog). Naprimer, esli vy nahodites' v kata- loge /usr, to kogda vy vvedete komandu: pwd vy poluchite imya: /usr - 38 - 4.7.2. Smena rabochego kataloga Rabochij katalog predstavlyaet soboj vashe mestopolozhenie v sisteme: eto "to, gde vy nahodites'" v sisteme XENIX. Dlya togo, chtoby smenit' eto mesto, ispol'zujte komandu "smenit' katalog" - cd: cd Ona menyaet vash rabochij katalog na vash domashnij katalog. CHtoby perejti v lyuboj drugoj katalog, ukazhite ego imya kak argument komandy cd. Naprimer, komanda: cd /usr peremeshchaet vas v katalog /usr. Tak kak vy nahodites' "v" vashem rabochem kataloge, smena katalogov podobna "puteshestviyu" iz odnogo kataloga v drugoj. CHtoby perejti na odin katalog vyshe tekushchego, vvedite: cd .. Naprimer, ukazannaya vyshe komanda peremestit vas iz /usr/joe/work v /usr/joe. Tochno takzhe komanda: cd ../.. perevedet vas iz /usr/joe/work v /usr, peremeshchaya vas vverh na dva kataloga. 4.8. Ispol'zovanie kodov dostupa fajla i kataloga Sistema XENIX pozvolyaet vladel'cu fajla ogranichit' dos- tup k fajlam i katalogam, ukazyvaya, kto mozhet chitat', izmenyat' ili vypolnyat' fajly, kotorye prinadlezhat emu. Dlya opredeleniya kodov dostupa, svyazannyh s zadannym fajlom ili katalogom, ispol'zujte komandu ls -l. Vyvod etoj komandy vyglyadit primerno tak: total 501 drwxr-x--- 2 boris grp1 272 Apr 5 14:33 dir1 drwxr-x--- 2 enid grp1 272 Apr 5 14:33 dir2 drwxr-x--- 2 iris grp1 592 Apr 6 11:12 dir3 -rw-r----- 1 olaf grp2 282 Apr 7 15:11 file1 -rw-r----- 1 olaf grp2 72 Apr 7 13:50 file2 -rw-r----- 1 olaf grp2 1403 Apr 1 15:22 file3 Kody dostupa predstavlyayut soboj pervye desyat' simvolov v stroke vyvoda. Kody dostupa dlya dir1, pervogo fajla - 39 - v vysheprivedennom spiske, predstavlyayut soboj posledova- tel'nost': drwxr-x--- Pervyj simvol oboznachaet tip fajla. On mozhet byt' sle- duyushchim: - Oboznachaet obyknovennyj fajl. d Oboznachaet katalog. c Oboznachaet special'noe ustrojstvo simvol'nogo tipa, naprimer, printer ili terminal. b Oboznachaet special'noe ustrojstvo blokovogo tipa, naprimer, zhestkij ili gibkij disk. n Oboznachaet special'nyj fajl imeni (t.e. semafor, ispol'zuemyj dlya upravleniya dostupom k nekotoromu resursu). s Oboznachaet razdelyaemyj fajl dannyh. p Oboznachaet mezhprocessornyj kanal, kotoromu prisvo- eno imya. Sleduyushchie devyat' simvolov, sleva napravo, predstavlyayut soboj devyat' naborov po devyat' kodov dostupa v kazhdom. Kazhdyj nabor upravlyaet dostupom dlya: - Vladel'ca - Gruppy - Prochih pol'zovatelej Vnutri kazhdogo nabora tri simvola oboznachayut, soot- vetstvenno, polnomochiya na chtenie fajla, ego izmenenie (t.e. zapis' v nego) i vypolnenie fajla kak komandu. Dlya kataloga polnomochie "na vypolnenie" oznachaet razre- shenie iskat' v kataloge lyubye vhodyashchie v nego fajly ili katalogi. Kody dostupa dlya obyknovennogo fajla imeyut sleduyushchie znacheniya: r Fajl mozhno chitat' w V fajl mozhno pisat' (ego mozhno izmenyat') x Fajl mozhno vypolnyat' - 40 - - Sootvetstvuyushchie polnomochiya otsutstvuyut Dlya katalogov kody dostupa imeyut sleduyushchie znacheniya: r Fajly kataloga mozhno vyvesti; kod "x" kataloga dolzhen byt' ustanovlen. w V kataloge mozhno sozdavat' ili udalyat' fajly; tak zhe, kak i s "r", kod "x" kataloga dolzhen byt' ustanovlen. x V kataloge mozhno vesti poisk. Prezhde chem vy smo- zhete perejti v katalog s pomoshch'yu komandy cd, polu- chit' dostup k fajlu, ili vyvesti fajly etogo kata- loga, dlya etogo kataloga dolzhen byt' ustanovlen kod "x". Pomnite, chto pol'zovatel' dolzhen imet' razreshenie "x", chtoby sdelat' chto-libo poleznoe v kataloge. Nizhe privedeny neskol'ko tipichnyh kombinacij kodov dos- tupa dlya kataloga: d--------- Dostup zakryt. |to rezhim, kotoryj zapreshchaet dostup k katalogu klassu pol'zovatelej. drwx------ Razreshaet dostup tol'ko vladel'cu. On mozhet ispol'zovat' komandu lc, sozdavat' fajly, udalyat' fajly, poluchat' dostup k fajlam i perehodit' v katalog s pomoshch'yu komandy cd. |to tipichnye kody dostupa dlya vladel'ca kataloga. drwxr-x--- Razreshaet dostup dlya chlenov gruppy. Oni mogut ispol'zovat' komandu lc i poluchat' dostup k fajlu v sootvetstvii s kodami dostupa fajla. CHleny gruppy mogut perehodit' v etot katalog, ispol'zuya komandu cd, no ne mogut sozdavat' ili udalyat' fajly vnutri nego. |to tipichnye kody dostupa vla- del'ca, dayushchego drugim neobhodimyj dostup k fajlam v svoem kataloge. drwx--x--x S etimi kodami dostupa vse pol'zovateli, za isklyu- cheniem vladel'ca, ne mogut ispol'zovat' komandu lc, no mogut perehodit' v katalog s pomoshch'yu komandy cd. V etoj glave opisany tol'ko obychnye fajly, vypolnyaemye fajly i katalogi. Svedeniya o drugih tipah fajlov smotri v razdele ls(C) v Spravochnom rukovodstve XENIX. - 41 - 4.8.1. Izmenenie kodov dostupa Kody dostupa fajla ili kataloga mozhno izmenit' komandoj chmod. Ona polezna, esli vy sozdali fajl s odnim rezhi- mom zashchity, no hotite razreshit' prochim pol'zovatelyam chitat', pisat' ili vypolnyat' ego. Format komandy chmod sleduyushchij: chmod instrukciya imya_fajla Pole instrukciya ukazyvaet kakie kody dostupa dlya kakogo klassa pol'zovatelej vy hotite izmenit'. Sushchestvuet tri klassa pol'zovatelej i oni oboznachayutsya sleduyushchim obra- zom: u Pol'zovatel', vladelec fajla ili kataloga. g Gruppa, kotoroj prinadlezhit pol'zovatel'. o Prochie - vse pol'zovateli sistemy. a Vse klassy pol'zovatelej. Sushchestvuet tri tipa kodov dostupa: r CHitat' - razreshaet ukazannym pol'zovatelyam smot- ret', no ne izmenyat' ili udalyat' fajl. w Pisat' - razreshaet ukazannym pol'zovatelyam izme- nyat' ili dazhe udalyat' fajl. x Vypolnyat' - razreshaet ukazannym pol'zovatelyam vypolnyat' fajl kak komandu. Naprimer, predpolozhim, chto fajl file1 sushchestvut so sle- duyushchimi kodami dostupa: -rw-r----- V etom primere vladelec fajla mozhet chitat' i pisat' v fajl, chleny gruppy mogut chitat' ego, a prochie pol'zova- teli ne imeyut dostupa k fajlu voobshche. Dlya togo, chtoby razreshit' chitat' file1 vsem klassam pol'zovatelej, vvedite: chmod a+r file1 V instrukcii komandy (a+r), "a" oboznachaet "all" (vse). Poluchivshiesya kody dostupa ustanovleny sleduyushchim obra- zom: - 42 - -rw-r--r-- Esli file1 imeet sleduyushchie kody dostupa: -rw------- Sleduyushchaya komanda razreshaet chitat' i pisat' v etot fajl tol'ko chlenam gruppy: chmod g+wx file2 Teper' kody dostupa budut vyglyadet' sleduyushchim obrazom: -rw--wx--- CHtoby zapretit' vladel'cu fajla i chlenam gruppy pisat' i vypolnyat' ego, vvedite: chmod ug-wx file1 4.8.2. Izmenenie polnomochij na prosmotr kataloga Katalogi takzhe imeyut polnomochiya na vypolneniya. |tot atribut oznachaet polnomochiya na prosmotr, a ne na vypol- nenie, tak kak katalogi nel'zya vypolnit'. Esli eti polnomochiya ne dany kakomu-to pol'zovatelyu, to togda on ne smozhet dazhe posmotret' imena fajlov v etom kataloge. Naprimer, predpolozhim, chto katalog dir1 imeet sleduyushchie atributy: drwxr-xr-x CHtoby zapretit' prosmatrivat' katalog prochim pol'zova- telyam, vvedite: chmod o-xr dir1 Novye atributy budyt vyglyadet' sleduyushchim obrazom: drwxr-x--- 4.9. Obrabotka informacii Vo mnogih sluchayah v fajlah budet soderzhat'sya informa- ciya, kotoruyu vy, vozmozhno, zahotite obrabotat'. V sis- teme XENIX sushchestvuyut razlichnye servisnye programmy dlya obrabotki informacii. V sleduyushchih razdelah opisyvayutsya nekotorye takie programmy i kak imi pol'zovat'sya. - 43 - 4.9.1. Sravnivanie fajlov Dlya sravnivaniya dvuh tekstovyh fajlov ispol'zujte komandu diff. Ona vyvodit te stroki iz ukazannyh faj- lov, kotorye razlichayutsya. Naprimer, predpolozhim, chto fajl s imenem men soderzhit sleduyushchie stroki: Teper' pora vsem nastoyashchim muzhchinam prijti na pomoshch' svoej storone a fajl s imenem women soderzhit sleduyushchee: Teper' pora vsem nastoyashchim zhenshchinam prijti na pomoshch' svoej storone V etom sluchae komanda: diff men women Vyvedet sleduyushchee: 1c1 < Teper' pora vsem nastoyashchim muzhchinam --- < Teper' pora vsem nastoyashchim zhenshchinam Razlichiya mezhdu tremya fajlami mozhno poluchit' pri pomoshchi komandy diff3. Podrobnee eta komanda opisana v razdele diff3(C) v Spravochnom rukovodstve XENIX. 4.9.2. Otobrazhenie argumentov Komanda echo vyvodit argumenty na standartnyj vyvod. Naprimer, vvedya: echo "Now is the time For all good men To come to the Aid of their party" Vy poluchite: "Now is the time For all good men To come to the Aid of their party" - 44 - Komanda echo osobenno polezna pri programmirovanii na yazyke interpretatora komand shell. Cm. glavu 4 "Interpretator komandnogo yazyka" v Rukovodstve pol'zo- vatelya XENIX. 4.9.3. Sortirovka fajla Odnoj iz naibolee poleznyh komand obrabotki fajlov yavlyaetsya komanda sort. Po umolchaniyu, sort sortiruet stroki fajla v sootvetstvii s posledovatel'nost'yu ASCII, t. e. v alfavitnom poryadke. Naprimer, chtoby otsortirovat' fajl s imenem phonelist, vvedite: sort phonelist V vysheprivedennom primere otsortirovannoe soderzhimoe fajla budet vyvodit'sya na ekran. Dlya sozdaniya otsorti- rovannoj versii phonelist s imenem phonesort, vvedite: sort phonelist > phonesort Zamet'te, chto sort polezna dlya sortirovki vyvoda drugih komand. Naprimer, chtoby otsortirovat' vyvod komandy who, vvedite: who | sort >whosort |ta komanda beret vyvod who, sortiruet ego i peresylaet otsortirovannyj vyvod v fajl whosort. U komandy sort sushchestvuet bol'shoe kolichestvo klyuchej. Podrobnoe opisanie sm. v razdele sort(C) v Spravochnom rukovodstve XENIX. 4.9.4. Poisk obrazca v fajle Komanda grep vybiraet i vyvodit tol'ko te stroki, koto- rye sootvetstvuyut zadannomu obrazcu. Naprimer, chtoby vyvesti vse stroki fajla, soderzhashchie slovo "tty38", vvedite: grep 'tty38' file Voobshche, vy vsegda dolzhny zaklyuchat' obrazec dlya poiska v odinochnye kavychki, chtoby special'nye metasimvoly interpretirovalis' pravil'no. V sleduyushchem primere podrazumevaetsya, chto vy imeete fajl s imenem phonelist, kotoryj soderzhit stroki, v kotoryh ukazano imya i telefon. Podrazumevaetsya takzhe, chto v etom spiske neskol'ko tysyach imen. Vy mozhete - 45 - ispol'zovat' komandu grep, chtoby najti telefon cheloveka s imenem Joe, chej nomer nachinaetsya s cifr 822. Dlya etogo vvedite sleduyushchuyu komandu: grep 'Joe' phonelist | grep '822-' >joes.number grep najdet vse stroki, soderzhashchie slovo "Joe". Zatem eti stroki budut profil'trovany cherez druguyu komandu grep, kotrraya vyberet stroki, soderzhashchie "822-" takim obrazom otbrosiv vseh drugih nenuzhnyh Joe. V konce kon- cov, pri uslovii, chto v spiske sushchestvuet edinstvennyj Joe, chej nomer nachinaetsya s 822, ego imya i telefon budet zapisano v fajle joes.number. Dlya polucheniya dopolnitel'noj informacii o komande grep, a takzhe o "rodstvennikah" etoj komandy fgrep i egrep, o tipah obrazcov, kotorye mozhno iskat' (oni nazyvayutsya "regulyarnye vyrazheniya"), smotri razdel grep(C) v Spra- vochnom rukovodstve XENIX. 4.9.5. Podschet slov, strok i simvolov wc - eto programma dlya podscheta slov v fajle. Bukvy 'wc' oboznachayut word count (podschet slov). Podrazumeva- etsya, chto slova razdelyayutsya znakami punktuacii, probe- lami, tabulyaciyami ili simvolami novaya stroka. wc takzhe schitaet kolichestvo simvolov i strok; vse tri chisla vyvodyatsya po umolchaniyu. Naprimer, chtoby podschitat' chislo strok, slov i simvolov v fajle textfile, vvedite: wc textfile Tipichnyj vyvod kolichestva strok, slov i simvolov mozhet vyglyadet' sleduyushchim obrazom: 4432 18188 97808 textfile Esli vy hotite podschitat' tol'ko simvoly, slova ili stroki, vy dolzhny ispol'zovat' sootvetstvuyushchie mnemoni- cheskie klyuchi. V kachestve illyustracii posmotrite vnimatel'no na sledu- yushchie tri komandy i ih vyvod: wc -c textfile 97808 textfile wc -w textfile 18188 textfile wc -l textfile 4432 textfile - 46 - Pervyj primer vyvodit chislo simvolov v textfile, vtoroj vyvodit chislo slov, a tretij chislo strok. 4.9.6. Ustanovka vremeni vypolneniya komandy Programma at pozvolyaet vam ustanovit' vremya vypolneniya komandy. Ona polezna, esli vy hotite vypolnit' komandu v to vremya, kogda vy ne sobiraetes' rabotat' s sistemoj neposredstvenno. Komanda at prinimaet standartnyj vvod i imeet sleduyushchij format: cat fajl | at vremya den' fajl - eto imya fajla, soderzhashchego komandu ili komandy dlya vypolneniya. vremya - eto vremya dnya, zadannoe cif- rami, za kotorymi sleduet "am" ili "pm", chto obozna- chaet, sootvetstvenno, do poludnya ili posle poludnya. CHislo, zadannoe odnoj ili dvumya ciframi, vosprinimaetsya kak chasy, tremya ili chetyremya - kak chasy i minuty. Bolee chetyreh cifr ne vosprinimaetsya. den' neobyazatelen. |to libo imya mesyaca, za kotorym sle- duet nomer dnya, libo den' nedeli. Esli den' ne zadan, komanda vypolnitsya segodnya. Naprimer, esli vy zahotite opredelit', kakie processy budut rabotat' v sisteme v desyat' chasov vechera, vo vtornik, pomestite sleduyushchuyu stroku v fajl s imenem use: ps -a > /usr/myname/use (Kak sozdavat' fajly i zapisyvat' v nih tekst, opisano v glave 4 "vi: tekstovyj redaktor" v Rukovodstve pol'- zovatelya XENIX). Posle togo, kak vy sozdali takoj fajl, vvedite: cat use | at 10pm tues Nazhmite RETURN. Poyavit'sya priglashenie sistemy XENIX i vy mozhete prodolzhat' rabotat'. V desyat' chasov vechera, vo vtornik, sistema XENIX vypolnit komandu ps -a i pomestit vyvod v fajl use. Vyhod iz sistemy na komandu at ne vliyaet. Dlya togo, chtoby proverit', kakie fajly dolzhny vypol- nit'sya, ispol'zujte komandu at s klyuchom -l. Ona vyvodit fajly, prinadlezhashchie dannomu pol'zovatelyu, kotorye dolzhny vypolnyat'sya. Takzhe vyvoditsya sleduyushchaya informa- ciya: - 47 - - Identifikator fajla. - Komanda, vyzyvayushchaya etot fajl (at ili batch). - Datu i vremya, kogda dolzhen byt' vypolnen fajl. CHtoby otmenit' vypolnenie komandy, snachala prosmotrite spisok fajlov dlya vypolneniya i zapomnite ego identifi- kator. Zatem ispol'zujte komandu at -r dlya udaleniya fajla ili fajlov iz spiska. Komanda at -r imeet sleduyushchij format: at -r chislo Naprimer: at -r 504510300.a udalit fajl s nomerom 504510300.a, otmeniv vse komandy, kotorye soderzhalis' v nem. Pol'zovatel' mozhet udalyat' tol'ko svoi sobstvennye fajly. 4.10. Upravlenie processami V sisteme XENIX neskol'ko processov mogut rabotat' odnovremenno. Naprimer, vy mozhete zapustit' programmu sortirovki fajla "v fonovom rezhime", a sami v eto vremya redaktirovat' drugoj fajl v osnovnom rezhime. Te pro- cessy, kotorymi vy upravlyaete s klaviatury, nazyvayutsya osnovnymi processami. Drugie processy, kotorye vy mozhete iniciirovat', no ne mozhete polnost'yu upravlyat' imi, nazyvayutsya fonovymi processami. V lyuboj moment vremeni u vas mozhet sushchestvovat' tol'ko odin osnovnoj process, no pri etom mogut odnovremenno vypolnyat'sya neskol'ko fonovyh processov. V etoj chasti opisano upravlenie fonovymi i osnovnymi processami. 4.10.1. Zapusk processa v fonovom rezhime Obychno komandy, poslannye s klaviatury, vypolnyayutsya v strogoj posledovatel'nosti; odna komanda dolzhna zakon- chit'sya pered tem, kak nachnetsya vypolnyat'sya sleduyushchaya. Takogo tipa komandy nazyvayutsya osnovnymi processami. V otlichie ot nih, fonovym processam ne nado zhdat' okoncha- niya predydushchej komandy. Fonovye komandy osobenno polezny dlya vypolneniya programm, kotorye znimayut mnogo vremeni. Dlya togo, chtoby zapustit' process v fonovom rezhime, dobav'te ampersand ('&') k koncu komandy. Naprimer, chtoby poschitat' chislo slov v neskol'kih bol'shih fajlah, pri etom prodolzhaya rabotat' s chem-nibud' eshche, vvedite: - 48 - wc file1 file2 file3 >count& Vyvod budet sobran v fajle count. Esli vyvod ne napra- vit' v fajl, on budet poyavlyat'sya na ekrane v nepredska- zuemye momenty vo vremya vashej raboty. Kogda process zapuskaetsya v fonovom rezhime, vy teryaete nad nim kontrol' vo vremya vypolneniya. Naprimer, vvedya INTERRUPT, vy ne ostanovite fonovyj process. Vmesto etogo vy dolzhny ispol'zovat' komandu kill, opisannuyu v sleduyushchem razdele. 4.10.2. Kak ostanovit' process CHtoby ostanovit' vypolnenie osnovnogo processa, nazhmite na vashem terminale klavishu INTERRUPT. |to ostanovit lyubuyu komandu, rabotuyushchuyu v osnovnom rezhime. Dlya togo, chtoby ostanovit' vse vashi processy, rabotayushchie v fono- vom rezhime, vvedite: kill 0 CHtoby ostanovit' kakoj-to konkretnyj fonovyj process, snachala vvedite: ps Komanda ps vyvodit identifikatory (PID) vseh vashih sushchestvuyushchih processov. Naprimer: PID TTY TIME CMD 3459 03 0:15 -sh 4831 03 1:52 cc program.s 5185 03 0:00 ps Dlya vysheprivedennogo primera, vy mozhete vvesti: kill 4831 gde 4831 - eto identifikator processa, kotoryj vy hotite ostanovit'. _______________________________________________________ Zamechanie Ostanovka processa, svyazannogo s redaktorom vi, mozhet vvesti terminal v strannyj rezhim raboty. Krome togo, vremennye fajly, kotrye obychno sozda- yutsya vo vremya zapuska komandy i udalyayutsya posle okonchaniya ee raboty, mogut ostat'sya posle vypolne- niya komandy kill. Vremennye fajly obychno naho- dyatsya v kataloge /tmp. |tot katalog sleduet perio- dicheski proveryat' i udalyat' starye fajly. - 49 - __________________________________________________ 4.11. Poluchenie informacii o statuse Tak kak XENIX - eto bol'shaya vychislitel'naya sreda, sushchestvuet ryad veshchej, kotorye vy zahotite uznat' o samoj sisteme, naprimer: kto sejchas rabotaet v sisteme, skol'ko ostalos' svobodnogo mesta na diskah, kakie pro- cessy v dannyj moment vypolnyayutsya. V etom razdele opi- sany razlichnye vidy dostupnoj informacii i metody ee polucheniya. 4.11.1. Kto rabotaet v sisteme Komanda who vyvodit imena, nomera terminalov i vremya vhoda v sistemu pol'zovatelej, rabotayushchih na dannyj moment v sisteme. Naprimer, vvedite: who |ta komanda vyvedet na ekran terminala chto-to podobnoe sleduyushchemu: arnold tty02 Apr 7 10:20 daphne tty21 Apr 7 07:47 eliot tty23 Apr 7 14:21 elen tty35 Apr 7 08:36 gus tty26 Apr 7 09:55 adrian tty28 Apr 7 14:21 Komanda finger vyvodit bolee podrobnuyu informaciyu, takuyu, kak nomera telefonov organizacij i dobavochnye telefonnye nomera. Dlya polucheniya dopolnitel'noj infor- macii ob ispol'zovanii etoj komandy, smotri finger(C) v Spravochnom rukovodstve XENIX. 4.11.2. Kakie processy vypolnyayutsya Tak kak komandy mogut byt' zapushcheny v fonovom rezhime, ne vsegda ochevidno, kakie processy byli zapushcheny vami. Komanda ps oznachaet "process status" (status processa) i vyvodit informaciyu o tekushchih processah, svyazannyh s vashim terminalom. Naprimer, vyvod komandy ps mozhet vyg- lyadet' sleduyushchim obrazom: PID TTY TIME CMD 10308 38 1:36 ed chap02.man 49 38 0:29 -sh 11267 38 0:00 ps Stolbec PID soderzhit unikal'nyj identifikator processa, - 50 - kotoryj mozhet byt' ispol'zovan dlya ostanovki kakogo- nibud' konkretnogo processa. Stolbec TTY soderzhit ter- minal, s kotorym svyazan process. Stolbec TIME soderzhit obshchee vremya vypolneniya processa. Process mozhet byt' ostanovlen komandoj kill. Dlya polucheniya informacii ob ispol'zovanii etoj komandy, smotri razdel 4.10.2 "Kak ostanovit' process". Dlya togo, chtoby opredelit' vse processy, rabotayushchie v sisteme, ispol'zujte klyuch -a: ps -a CHtoby opredelit' processy, rabotayushchie na drugom termi- nale, ispol'zujte klyuch -t, posle kotorogo ukazhite nomer terminala. Naprimer, esli vy hotite uznat', kakie pro- cessy svyazany s terminalom nomer 13, vvedite: ps -t13 Dlya polucheniya dopolnitel'noj informacii o komande ps i ee klyuchah, smotri ps(C) v Spravochnom rukovodstve XENIX. 4.11.3. Poluchenie informacii o printere Vy mozhete poluchit' informaciyu o sostoyanii fajlov, koto- rye vy poslali na pechat', komandoj lpstat. lpstat vyvo- dit informaciyu ob otdel'nom fajle ili obo vseh vashih fajlah, ozhidayushchih pechati. CHtoby vyyasnit', v kakom sostoyanii nahoditsya otdel'nyj fajl (ego status), vam nuzhno znat' identifikator zap- rosa na pechat'. Kogda vy delaete zaprosy na pechat' s pomoshch'yu komandy lp, to identifikator zaprosa vyvoditsya na ekran. On imeet vid: printer-identifikacionnyj_nomer printer - eto imya printera, na kotorom budet pechatat'sya vash fajl (uznajte u administratora sistemy, kakie prin- tery vam dostupny), a identifikacionnyj_nomer predstav- lyaet soboj unikal'noe chislo, identificiruyushchee vash fajl. CHtoby uznat' sostoyanie konkretnogo fajla, vvedite: lpstat identifikator_zaprosa lpstat v otvet vyvedet datu i vremya, kogda byl sdelan zapros na pechat', i skol'ko simvolov ostalos' napecha- tat'. CHtoby vyyasnit', v kakom sostoyanii nahodyatsya vse vashi fajly, ozhidayushchie pechati na printerah, vvedite: - 51 - lpstat lpstat v otvet vyvedet identifikatory zaprosov i infor- maciyu o sostoyanii vseh vashih fajlov. Vy mozhete uznat', kakie fajly ozhidayut pechati na dannom printere, ispol'zovav lpstat s klyuchom -p. |ta komanda imeet sleduyushchij format: lpstat -p printer V otvet lpstat vyvedet identifikatory zaprosov i infor- maciyu o sostoyanii dlya vseh fajlov, ozhidayushchih pechati na ukazannom printere. Podrobno lpstat i ego klyuchi opisyvayutsya v Spravochnom rukovodstve XENIX v razdele lpstat(C). 4.12. Kak pol'zovat'sya printerom Komandy XENIX, upravlyayushchie printerami, legki v ispol'- zovanii i predostavlyayut vam bol'shoe kolichestvo varian- tov pri pechati fajla. S pomoshch'yu neskol'kih prostyh komand vy mozhete sdelat' neskol'ko kopij fajla, otme- nit' zapros na pechat' ili ustanovit' special'nyj klyuch dlya konkretnogo printera. Tak kak sistema printerov XENIX razrabotana takim obrazom, chtoby ee mozhno bylo legko nastraivat' na rabotu s razlichnym okruzheniem, to uznajte u vashego administratora sistemy, kakie printery i klyuchi vam dostupny. 4.12.1. Pechat' fajlov: lp CHtoby raspechatat' kopii vashih fajlov, vy mozhete vos- pol'zovat'sya libo komandoj lp, libo komandoj lpr. |ti dve komandy ekvivalentny. V etom razdele v primerah ispol'zuetsya lp. Naprimer, chtoby napechatat' odnu kopiyu fajla s imenem memo, vvedite: lp memo Vy mozhete otpravit' na pechat' neskol'ko fajlov. Napri- mer, chtoby napechatat' fajly memo, report i letter, vve- dite: lp memo report letter Kogda vy delaete zapros na pechat', lp v otvet vyvodit na ekran vashego terminala identifikator vashego zaprosa. On mozhet, naprimer, vyglyadet' tak: - 52 - pr4-532 Pervaya chast' ("pr4") - eto imya printera, na kotorom vash fajl budet pechatat'sya. Vtoraya chast' ("232") identifici- ruet vash fajl. Esli vy pozzhe zahotite otmenit' zapros na pechat' ili proverit', v kakom sostoyanii on naho- ditsya, to vam by nado zapomnit' etot identifikator zap- rosa. Podrobnee eto opisano v razdelah 4.12.3, "Otmena zaprosa na pechat'", i 4.12.4, "Kak uznat' sostoyanie zaprosa na pechat':lpstat". Odna kopiya kazhdogo ukazannogo vami fajla budet napecha- tana na printere, ispol'zuemom v vashej sisteme po umol- chaniyu. lp mozhno ispol'zovat' v konvejerah komand i s drugimi komandami. Razbienie na stranicy osushchestvlyaetsya koman- doj pr. CHtoby podelit' stranicy i napechatat' fajl s imenem textfile, vvedite: pr textfile | lp CHtoby otsortirovat', razbit' na stranicy i napechatat' fajl datafile, vvedite: sort datafile | pr | lp 4.12.2. Kak pol'zovat'sya klyuchami lp U komandy lp est' neskol'ko klyuchej, kotorye pomogayut vam upravlyat' vyvodom printera. S pomoshch'yu klyucha kolichestva, -n, vy mozhete ukazat', skol'ko kopij vy hotite napechatat'. Naprimer, chtoby napechatat' dve kopii fajla s imenem report, vvedite: lp report -n2 Drugoj klyuch, -d, zadaet mesto naznacheniya vashego zaprosa na pechat', t.e. printer, na kotorom dolzhen byt' napecha- tan vash fajl. znajte u administratora sistemy, kakie printery vam dostupny. CHtoby napechatat' dve kopii fajla s imenem report na printere quick, vvedite: