М И Н И СТ Е РСТ В О О БРА ЗО В А Н И Я И Н А У К И РО ССИ Й СК О Й Ф Е Д Е РА Ц И И В О РО Н Е Ж СК И Й ГО СУ Д А РСТ В...
58 downloads
231 Views
320KB Size
Report
This content was uploaded by our users and we assume good faith they have the permission to share this book. If you own the copyright to this book and it is wrongfully on our website, we offer a simple DMCA procedure to remove your content from our site. Start by pressing the button below!
Report copyright / DMCA form
М И Н И СТ Е РСТ В О О БРА ЗО В А Н И Я И Н А У К И РО ССИ Й СК О Й Ф Е Д Е РА Ц И И В О РО Н Е Ж СК И Й ГО СУ Д А РСТ В Е Н Н Ы Й У Н И В Е РСИ Т Е Т
Р абота в к ом анд ной с т рок е О С Solaris У чебно-метод и ческоепособи епо направлени ю 010500 (510200) и специ альности 010501 (010200) «При клад ная математи каи и нф ормати ка»
В оронеж 2005
2 У тверж д ено научно-метод и чески м советом протокол № 6 от20 и юня 2005 г. ф акультетаПМ М
Состави тель К ры ж ановская Ю .А .
У чебно-метод и ческое пособи е под готовлено на каф ед ре техни ческой ки бернети ки и автомати ческого регули ровани я ф акультета при клад ной математи ки , и нф ормати ки и механи ки В оронеж ского госуд арственного уни верси тета. Рекоменд уется д ля студ ентов 4 курса д /о ф акультета При клад ной математи ки , и нф ормати ки и механи ки .
3 Д анное пособи е сод ерж и т свед ени я об основны х команд ах О С Solaris, и спользуемы х при работе в команд ной строке. М атери ал основы вается на О С Solaris верси и 8. При вод я тся при меры и спользовани я команд , результаты и х вы полнени я и зад ани я д ля и нд и ви д уального вы полнени я . М атери алы опробованы при провед ени и лабораторны х заня ти й. Пособи е пред назначено д ля студ ентов 4 курса д невного отд елени я , и зучающ и х спецкурс «Защ и та и нф ормаци и при ад ми ни стри ровани и UNIX-си стем» . При под готовке пособи я и спользованы учебны е матери алы , пред оставленны е в рамках программы Sun One Academy [1,2], ли тературны е и сточни ки [3,4], а такж е встроенное руковод ство. С о дер ж а н и е 1. Зад ачи и терми нолони я си стемного ад ми ни стри ровани я … … … .… … … .3 2. Си нтакси скоманд ной строки … … … … … … … … … … … … … … … … … .… … 5 3. Получени еи нф ормаци и о си стеме… … … … … … … … … … … … … … … … ...… 5 3.1. В строенная д окументаци я , д атаи календ арь… … … … … ..… .… … … … … … 5 3.2. И нф ормаци я о си стеме… … … … … … … … … … … … … … … … … … … … … ...6 3.3. О пред елени етекущ и х пользователей … … … … … … … … … … … … .… … … ..6 4. У правлени еучетны ми запи ся ми пользователей и групп … … … … … … … … ..8 4.1. Созд ани еучетны х запи сей пользователей … ..… … .… … … … … … … … … … 8 4.2. И зменени еучетны х запи сей пользователей … … … .… … … … … … … … … ...9 4.3.У д алени еучетны х запи сей пользователей … … … … … … … … … … … … … … 9 4.4.Д обавлени еучетны х запи сей групп … … … … … … … … … … ...… … … … … … 9 4.5.И зменени еучетны х запи сей групп … … … … … … … … … … … … … … … ..… 10 4.6.У д алени ереги страци онны х запи сей групп … … … … … … … … … … … … .....10 5. Работасф айлами и каталогам … … … … … … … … … … … … … … … … … … … 10 5.1. К аталоги … … … … … … … … … … … … … … … … … … … … … … … … … .… ...10 5.2. Ф айлы … … … … … … … … … … … … … … … … … … … … … … .… … … … ..… .16 6. Печать… … … … … … … … … … … … … … … … … … … … … … … … … … … ....… 30 6.1. Печатьи з команд ной строки … … … … … … … … … … … .… … … … … ..… … 30 6.2. В ы вод состоя ни я при нтераи очеред ей … … … … … … … … … … … … … … ...31 6.3. О пред елени есостоя ни я всех настроенны х при нтеров … … … … … … … .… .31 6.4. В ы вод и нф ормаци и о при нтерах, при ни мающ и х зад ани я напечать… .… ..32 6.5. У д алени езад ани й напечатьи з очеред и … … … … … … … … … … … … … … .32 6.6. О тменазад ани я … … … … … … … … … … … … … … … … … … … … … … … … ..32 6.7. Ф ормати ровани еи печатьф айла… … … … … … … … … … … … … ...… … .… .32 Л и тература… … … … … … … … … … .… … … … … … … … … … … … … … … … … … 35
1. Зад ачи и т ерм и нол оги я с и с т ем ногоад м и ни с т ри ров ани я А д ми ни стри ровани еопераци онной сред ы Solaris™ 8 под разумеваетмнож ество зад ач, в том чи сле автономную (standalone) и нсталля ци ю, управлени е ф айловы ми си стемами , резервное копи ровани е, контроль за вы полня емы ми процессами , ад ми ни стри ровани е пользователей и управлени е устройствами . В д анном пособи и буд ут рассмотрены вопросы си нтакси са команд ной строки ,
4 способы получени я и нф ормаци и о си стеме, управлени и учетны ми запи ся ми пользователей и групп, работы с ф айлами и каталогами , а такж е работы с печатью. •Х ост(Host) — терми н, и спользуемы й д ля опи сани я компьютерной си стемы . •И мя хоста(Host name) — уни кальноеи мя , назначаемоекомпьютерной си стеме си стемны м ад ми ни стратором, чтобы отли чи тьееотд руги х хостов в сети . И мя , при своенноехосту, отображ ается команд ой uname -n. •IP-ад рес (Internet (IP) address)— чи сло, которе пред ставля ет ад рес хоста и ад рес сети , напри мер: 192.134.117.25. IP-ад рес и д енти ф и ци рует местонаход ж ени ехоста в И нтернете, что позволя етнаправля тьсетевой граф и к над анны й хост. Э тотпрограммны й ад реснаход и тся в ф айле /etc/inet/hosts. •Ethernet ад рес— уни кальны й аппаратны й ад рес хоста. Ч и сло и з 12 ш естнад цатери чны х разря д ов, напри мер: 8:0:20:7a:b:b8. Э тот ад рес храни тся в энергонезави си мой операти вной памя ти (NVRAM -nonvolatile random access memory). •Сервер— это хости ли процесс, которы й пред оставля етсерви сы д руги м хостам и ли процессам в сети . •К ли ент — это хост и ли процесс, которы й и спользует серви сы , пред оставля емы месервером. •Ф айл-сервер - хост, которы й разд еля етсвоед и сковое пространство и ф айлы с д руги ми хостами в сети . •При нт-сервер пред оставля етуслуги сетевой печати д руги м хостам в сети . •Сервер при лож ени й пред оставля етпри лож ени я разли чны м хостам в сети . • И мя пользователя (User name) — У ни кальное и мя , которое и спользует пользовательд ля вход ав си стему, такж еназы ваемоереги страци онны м и менем (login name). • Пароль (Password) - комби наци я букв, ци ф р и ли специ альны х си мволов, которую д олж ен ввести пользовательвместеси менем пользователя д ня вход ав си стему. •Д омаш ни й каталог пользователя (User's home directory) - каталог д ля созд ани я и хранени я ф айлов, в которы й попад аетпользовательпослевход ав си стему. •К оманд ны й и нтерпретатор пользователя (User's login shell) - пользовательское окруж ени е созд ается ф айлами и ни ци али заци и , опред еленны ми команд ны м и нтерпретатором пользователя . •Пользовательски е ф айлы и ни ци али заци и скри пты команд ного и нтерпретатора, опред еля ющ и е каки м д олж но бы ть установлено окруж ени е пользователя послеего реги страци и в си стеме. •Реги страци онное и мя пользователя (login name)— И мя каж д ого пользователя д олж но бы тьуни кальны м и состоя тьи з комби наци и от д вух д о восьми букв (A— Z, a— z) и ци ф р (0-9). Первы й си мвол д олж ен бы тьбуквой, и , по крайней мере, од и н си мвол д олж ен бы тьбуквой ни ж него реги стра. И мя пользователя не д олж но сод ерж атьпробелов. •И д енти ф и катор пользователя (User identification (UID) number) — У ни кальны й чи словой и д енти ф и катор пользователя в си стеме. Н омера и д енти ф и каторов обы чны х пользователей располагаются в д и апазонеот100 д о
5 60000. В се и д енти ф и каторы д олж ны бы тьуни кальны . М акси мальное значени е д ля UID составля ет2147483647. • И д енти ф и катор группы (Group identification (GID) number) - уни кальны й чи словой и д енти ф и катор группы , к которой при над леж и т пользователь. К аж д ы й GID д олж ен бы тьцелы м чи слом от100 д о 60000. Пользователя мож но д обави тьв ранееопред еленны егруппы пользователей. •К омментари й — и д енти ф и ци руетпользователя . О бы чно сод ерж и тполноеи мя пользователя и необя зательную и нф ормаци ю такую, кактелеф онны й номери ли местож и тельство. •Д омаш ни й каталог опред еля етпутькд омаш нему каталогу пользователя . •И стечени евремени д ействи я пароля опред еля етд ополни тельную возмож ность пользователя м меня тьи х пароли в соответстви и срегламентом.
2.С и нт ак с и с к ом анд ной с т рок и Базовы й си нтакси скоманд ы UNIX включает: к о м анд а п арам е т р(ы ) аргум е нт (ы ) О бозначени е О пи сани е к о м анд а В ы полня емая команд а(указы вает, чт о д елатьси стеме) п арам е т р И зменя юткоманд у (указы ваютси стеме, к ак вы полня ть команд у). Параметры начи наются сси мволад еф и са(-). аргум е нт И мя ф айла, каталогаи ли просто текст
3. П ол учени е и нформ аци и ос и с т ем е 3.1. Вс т роенная д ок ум ент аци я, д ат а и к ал енд арь К оманд а man и спользуется д ля вы вод а страни ц руковод ства по любой д анной команд е: man [ -s секци я ] им я_к о м анд ы man -k к лю че в о е _с ло во Н а страни це руковод ства при сутствуют много разли чны х компонентов. Ч асть SEE ALSO вни зу страни цы рук овод ства сод ерж и т ссы лки на альтернати вны й матери ал. К огд а за эти ми ссы лками след ует ци ф ра в скобках, это значи т, что этотразд ел руковод стваслед уетсмотреть, и спользуя параметр -s команд ы man. Д ля пои ска по ключевому слову и вы вод а спи ска команд , в которы х оно при сутствует и спользуется параметр –k. По умолчани ю пои скпо ключевому слову нед оступен. Д ля настройки си стемы по под ключени ю этой возмож ности си стемны й ад ми ни страторд олж ен запусти тькоманд у: catman –w. К лючи управлени я прокруткой страни ц руковод ства К люч
Д ействи е
Spacebar К лави ш а Return b f q
В ы вод и тслед ующ и й экран руковод ства Прокручи ваетпо од ной строкезанаж ати е Перемещ аетнаод и н экран назад Перемещ аетнаод и н экран вперёд В ы ход и з руковод ства
6 /о бразе ц n h
О сущ ествля етпои ско бразца И щ етслед ующ еевхож д ени ео бразца В ы вод и топи сани евозмож ностей по прокрутке
К оманд а cal вы вод и т календ арь на текущ и й меся ц текущ его год а. Е сть возмож ность зад ани я опред еленного меся ца и год а, напромер, са1 10 2005 (команд аи д вааргумента). Т екущ ую д ату вы вод и т команд а date, д ля которой мож но зад ать ф ормат вы вод а, напри мерddhhmmyy (аргумент). 3.2. И нформ аци я ос и с т ем е И нф ормаци ю о си стеме команд а вы вод и т uname. По умолчани ю результатом вы полнени я этой команд ы буд ети мя текущ ей О С. 3.3. О пред ел ени е т ек ущи х по л ьзов ат ел ей И спользуйте команд у who д ля вы вод а спи ска пользователей, которы е под соед и нены клокальной си стеме в д анны й момент. Спи сокбуд ет включать и х и мена, опред елённы й порттерми налавход а, д ату и время вход аи расчётное время , прош ед ш ее с момента вы полнени я и ми послед него д ействи я в си стеме. Е сли пользовательзаход и т уд алённо, то показы вается и мя уд алённой си стемы пользователя . Фо рм ат к о м анд ы who [ am i ] Д ля вы вод апользователей, работающ и х в си стеме, вы полни теслед ующ ее: $ who user1 user1 user1 user1
console pts/4 pts/6 pts/7
Feb 25 Feb 25 Feb 25 Feb 25
13:50 14:37 14:54 15:24
(:0) (:0.0) (:0.0) (:0.0)
В тороеполе в результате вы вод а команд ы who опред еля етвход ное устройство пользователя , котороемож етбы тьод ни м и з след ующ и х: •console — устройство, и спользуемое д ля отображ ени я сообщ ени й во время загрузки си стемы и сообщ ени й об ош и бках. •pts - псевд оустройство, которое пред ставля етlogin (и ли оконную) сесси ю без ф и зи ческого устройства. У д аленны е вход ы пред ставлены эти м ти пом устройств. • term— устройство, которое ф и зи чески под ключено к послед овательному порту, такоекактерми нал и ли мод ем. Д ля опред елени я и мени пользователя и спользуется команд а who am I, что экви валентно и спользовани ю команд ы who -m. П рим е р Д ля вы вод аи мени пользователя вы полни теслед ующ ее: $ who am i user1 pts/7 15:24 (:0.0) $
Feb 25
Д ля отображ ени я д етальной и нф ормаци и о локаль ны х и ли уд аленны х пользователя х и спользуйте команд у finger, которая вы вод и т на экран
7 реги страци онное и мя пользователя , путь к его д омаш нему каталогу, время вход а в си стему, и мя вход ного устройства, д анны е, сод ерж ащ и еся в поле комментари я ф айла /etc/passwd (обы чно это полное и мя пользователя ), команд ны й и нтерпретатори и мя хоста, если вход уд аленны й. Фо рм ат к о м анд ы finger -m usemame finger -m usernameeremotehosfcname О пци я -m соответствуетаргументам только наusername. И спользуйте команд у id д ля опред елени я ID пользователя , его и мени , ID и и мени группы . Фо рм ат к о м анд ы id [ им я_п о льзо в ат е ля ] И нф ормаци ю о своей учётной запи си мож но получи тьтак: $ id uid=11001(user1) gid=10(staff) $
Д ля опред елени я и нф ормаци и об учётной запи си какого-ли бо пользователя вы полни теслед ующ ую команд у: $ id root uid=0(root) gid=1(other ) $
В ы вод команд ы rusers оченьпохож на вы вод команд ы who, но она показы вает пользователей, которы е зареги стри рованы на уд аленны х хостах. Спи сок отображ ается в поря д ке получени я ответов от уд аленны х хостов — вы вод и тся на экран и мя пользователя и и мя хоста. У д аленны й хост буд ет отвечать команд е rusers, только если его rpc.rusersd д емон разблоки рован. Э тот сетевой д емон - сервер, которы й возвращ ает спи сок пользователей на уд аленны х хостах. Фо рм ат к о м анд ы rusers [ -l ] К оманд а rusers -l вы вод и т на экран спи сок и мен пользователей, зареги стри рованны х на уд аленны х си стемах, атакж еи менахостов, накоторы е вош ел пользователь, портTTY (вход ноеустройство) меся ц, д ату, время вход а, а такж евремя простоя . Е сли пользовательакти вен, то в послед нем полевремя не отображ ается . П рим е р # rusers -l user8 remotehost1:pts/4 root remotehost1:console user4 remotehost5:pts/12 user6 remotehost2:console
Feb Feb Feb Feb
22 22 22 22
11:48 09:31 8:00 13:41
27 28:10 1:43 9
(:0) (:0) (:0) (:0)
Д ля вы полнени я ф ункци й ад ми ни стри ровани я вы , как си стемны й ад ми ни стратор, д олж ны вход и тьв си стему только как root. Н о вы д олж ны и збегатьвы полнени я обы чной работы какпользовательroot. Н е вы полня я зад ачи в качестве суперпользователя , вы защ и щ аете си стему от несанкци они рованного д оступа, таккакэто уменьш ает вероя тностьтого, что си стемабуд етоставленасневы ш ед ш и м и з неепользователем root. К рометого, если работа буд ет вы полня ться от обы чного пользователя , уменьш и тся вероя тностьвозни кновени я кри ти чески х ош и бок.
8 В ы мож етестатьпользователем root: •войд я в си стему напря мую какroot и введ я парольсуперпользователя ; •войд я в си стему какобы чны й пользователь , азатем вы звав команд у su и введ я парольсуперпользователя . В ы д олж ны зареги стри роваться в си стеме какобы чны й пользователь , а затем стать суперпользователем, и спользуя команд у su д ля д оступа к си стемны м ф айлам и ли д ля вы полнени я команд ад ми ни стри ровани я . К оманд а su позволя ет пользователю переключи ться на д ругого пользователя без вы ход аи з си стемы . Фо рм ат к о м анд ы su [ - ] [ usemame ] Д ля и спользовани я команд ы su вы д олж ны ввести соответствующ и й пароль, если только вы не пользователь root. Суперпользователь мож ет вы полня ть команд у su без паролей. Е сли паролькорректен, то su созд ает новы й shellпроцесс в соответстви и сполем и нтерпретатора в строкед анного пользователя ф айла /etc/passwd. О пци я su - (д еф и с) указы вает полны й вход в си стему. К оманд аи зменя етрабочееокруж ени е пользователя так, какесли бы вы вош ли в си стему напря мую как указанны й пользователь . Д ля вы ход а и з сесси и суперпользователя и возврата к и сход ному пользователю нуж но набрать команд у exit. Зад ани е. С помощ ью встроенной д окументаци и найти опи сани е команд ы passwd и при мени тьее.
4. Управ л ени е учет ным и запи с ям и пол ьзов ат ел ей и групп И спользуйте след ующ и е сред ства команд ной строки д ля д обавлени я , и зменени я и уд алени я учетны х запи сей пользователей и групп на локальной си стеме: •useradd - д обавля етновую учетную запи сьпользователя в локальную си стему, •usermod - и зменя етучетную запи сьпользователя в локальной си стеме; •userdel - уд аля етучетную запи сьпользователя и з локальной си стемы ; •groupadd - д обавля ет (созд ает) новую учетную запи сьгруппы в локальной си стеме; •groupmod - и зменя етучетную запи сьгруппы в локальной си стеме; •groupdel - уд аля етучетную запи сьгруппы и з локальной си стемы . 4.1. С озд ани е учет ных запи с ей по л ьзов ат ел ей И спользуйте команд у useradd д ля д обавлени я новой учетной запи си пользователя в локальную си стему. Э такоманд атакж еавтомати чески копи рует всеф айлы и ни ци али заци и в новы й д омаш ни й каталог пользователя . Фо рм ат к о м анд ы useradd [ -u uid ] [ -g gid ] [ -G gid [, gid, . . ] ] [ -d dir ] [ -m ] [ -s shell ] [ -c comment ] loginname О пци и команд ы и спользуются д ля установлени я уни кального uid д ля нового пользователя ; указани я вы бранного и д енти ф и катора и ли и мени группы ;
9 опред елени я втори чной группы д ля нового пользователя ; опред елени я полного пути кд омаш нему каталогу пользователя ; созд ани я нового д омаш него каталога пользователя (если он ещ е не созд ан); полного пути к команд ному и нтерпретатора которы й буд ет и спользоваться в качестве вход ного (если параметр не указан, то по умолчани ю буд ет /bin/sh); д ля указани я полного и мени и размещ ени я пользователя и реги страци онного и мени д анного пользователя соответстенно. 4.2. И зм енени е учет ных запи с ей пол ьзов ат ел ей И спользуйте команд у usermod д ля и зменени я реги страци онной и нф ормаци и о пользователев си стеме. Фо рм ат к о м анд ы usenmod [ -u uid [ -о ] ] [ -g gid ] [ -G gid [ , gid . . . ] ] [ -d dir ] [ -m ] ] [ -s shell ] [ -c comment ] [ -l newlogname ] [ -f inactive ] [ -e expire ] loginname В целом опци и команд ы usermod д ействуюттакж е, каки д ля команд ы useradd, заи сключени ем след ующ и х опци й: •-о - разреш аетд убли ровани еUID. •-m -перемещ ает д омаш ни й каталог пользователя в новое место, указанное с помощ ью опци и -d. • -l newlogname — и зменя ет реги страци онное и мя д ля учетной запи си указанного пользователя . •-f inactive - устанавли вает коли чество д ней неакти вности , разреш енны х д ля д анного пользователя . Е сли учетной запи сью не пользовали сь (под д анной учетной запи сью не вход и ли в си стему) указанное коли чество д ней, то она блоки руется . •- e expire — устанавли вает д ату и стечени я срока д ля д анной учетной запи си . У казы вает д ату (mm/dd/yy), по и стечени и которой пользователь не мож ет больш е вход и тьв си стему и и метьд оступ кучетной запи си . У четная запи сь блоки руется . •loginname- реги страци онноеи мя пользователя д ля текущ ей учетной запи си . П р име р В след ующ ем при мере и зменя ется реги страци онное и мя и д омаш ни й каталог пользователя currentuser1 наnewuser1: # usermod -d /export/home/newuser1 -m -l newuser1 currentuser1
4.3.Уд ал ени е учет ных запи с ей по л ьзо в ат ел ей И спользуйте команд у userdel д ля уд алени я учетной запи си пользователя и з си стемы . Э та команд а такж е уд аля етд омаш ни й каталог пользователя и все его сод ерж и мое, если это требуется . Фо рм ат к о м анд ы userdel [ -r ] login В ы мож ете и спользовать опци ю -r д ля уд алени я д омаш него каталога пользователя и з локальной ф айловой си стемы . Э тот каталог д олж ен сущ ествовать. П р име р Д ля уд алени я реги страци онной запи си пользователя guest1 вы полни те след ующ ее: # userdel guest1
10 Ч тобы запроси ть од новременное уд алени е и з си стемы и учетной запи си пользователя , и его д омаш него каталога, вы полни теслед ующ ее: # userdel -r guestl
4.4.До бав л ени е учет ных запи с ей групп И спользуйте команд у groupadd как суперпользователь д ля созд ани я новы х реги страци онны х запи сей групп. Фо рм ат к о м анд ы groupadd [ -g gid [ -о ] ] groupname М ож но и спользоватьслед ующ и еопци и команд ы groupadd: •-g gid— назначаети д енти ф и каторд ля новой группы ; •-о — разреш аетд убли ровани еGID. 4.5.И зм енени е учет ных запи с ей групп И спользуйте команд у groupmod д ля и зменени я опред елени й указанной группы путем мод и ф и каци и соответствующ ей строки в ф айле/etc/group. Фо рм ат к о м анд ы groupmod [ -g gid [ -о ] ] [ -n name ] groupname О п ции •-g gid— указы ваетновы й GID д ля группы ; •-о — разреш аетд убли ровани еGID; •-n name— указы ваетновоеи мя д ля группы . 4.6.Уд ал ени е реги с т раци онных запи с ей групп И спользуйте команд у groupdel д ля уд алени я учетной запи си группы и з си стемы . Э такоманд ауд аля етсоответствующ ую строку и з ф айла/etc/group. Фо рм ат к о м анд ы groupdel groupname
5. Р абота с фай л ам и и к ат ал огам и Сущ ествуют д ва ти па пути : абсолютны й и относи тельны й. Абсо лю т ны й п ут ь указы вает на ф айл и ли каталог относи тельно всего д ерева О С Solaris. А бсолютны й путьвсегд а: •начи нается со знакакосой черты (/), обозначающ его корневой каталог и затем включает весьспи соккаталогов д о объекта (которы й мож ет бы тьф айлом и ли д руги м каталогом). Знаккосой черты (/) разд еля ети менакаталогаи объекта. Зам ечани е - А бсолютны й путьтакж еназы вается п о лны м . О т но сит е льны й п ут ь опи сы вает местополож ени е каталога по отнош ени ю к текущ ему. О тноси тельны й путьни когд а не начи нается с си мвола косой черты (/). Т акж е и спользуется знак косой черты (/) как разд ели тель меж д у объектами пути (напри мер, и мя каталога и ли и мя ф айла). Е сли вы наход и тесьв каком-ли бо каталоге и хоти те перемести ться вни з по д ереву каталогов, вам не нуж но ввод и ть абсолютны й путь от корня . В вед и те путь, начи нающ и йся с и мени след ующ его ни ж естоя щ его каталога. 5.1. Кат ал оги Сменакаталога.
11 К огд а пользователь и значально вход и т в си стему, текущ и й каталог устанавли вается на его д омаш ни й каталог. Т екущ и й рабочи й каталог мож но и змени тьв любоевремя , и спользуя команд у cd. Фо рм ат к о м анд ы cd им я_к ат ало г Д ля перемещ ени я по д ереву каталогов мож но и спользоватькакотноси тельны й, таки абсолютны й пути . В озврати ться в д омаш ни й каталог мож но, набрав команд у cd без параметров. В ы вод текущ его каталога. К оманд а pwd (Print Working Directory) опред еля ет и показы вает каталог, в котором вы в д анны й моментработаете. К оманд аpwd показы ваетабсолютны й путьктекущ ему каталогу. Фо рм ат к о м анд ы pwd Сменакаталогов си спользовани ем сокращ ени й пути . Сокращ ени я пути и спользуются как бы стры й метод перемещ ени я по д ереву каталогов и ли ссы лки наопред елённы й каталог в команд ной строке(Т абл. 1). Табл . 1. Сокращ ени я пути Си мвол Значени е . Т екущ и й рабочи й каталог .. В ы ш естоя щ и й каталог по отнош ени ю ктекущ ему След ующ и е при меры показы вают, как мож но и спользовать команд у cd с сокращ ени я ми пути д ля перемещ ени я по д ереву каталогов Solaris: $ pwd /export/home/user1/dir1 $ cd .. $ pwd /export/home/user1 $ cd ../../.. $ pwd / $
В ы вод сод ерж и мого каталога. Д ля вы вод а сод ерж и мого каталога и спользуйте команд у ls. Э та команд а вы вод и т спи сок ф айлов и каталогов внутри указанного каталога. Без параметров мож но вы вести сод ерж и моетекущ его каталога. Фо рм ат к о м анд ы ls [ -п арам е т р ] путь_д оступа. . . Ф айлы , и мена которы х начи наются с точки (.), назы ваются с к ры т ы м и ф ай лам и. Скры ты еф айлы часто и спользуются д ля настройки рабочей сред ы . И спользуйте команд у ls -а д ля вы вод а спи ска всех ф айлов в каталоге, включая скры ты е(.) ф айлы . В ы вод ти паф айлов. И спользуйте команд у ls -F д ля вы вод а ти па ф айлов. В след ующ ей табли це показанаи нтерпретаци я вы вод акоманд ы ls -F.
12 Т абл. 2. Си мволы , обозначающ и ети пы ф айлов Т и п ф айла
Си мвол
К аталог / И сполня емы й * Т екстовы й ф айл/ASCII (пусто) Си мволи ческая свя зь @
Зам ечани е - с им во личе с к ая с в язь - это специ альны й ти п ф айла, которы й сод ерж и тпутькф айлу и ли каталогу, накоторы й он указы вает. Рас шире нны й в ы во д Д ля вы вод аполной и нф ормаци и о сод ерж и мом каталогаи спользуется ls -l. Д ля получени я д етальной и нф ормаци и об и спользовани и команд ы ls -l вы полни теслед ующ ее: К оманд аls -1 пред оставля ети нф ормаци ю о ф айлах в ф ормате, пред ставленном наРи с. 1.
Ри с. 1. И нф ормаци я о ф айлах в расш и ренном ви д е В ы вод и нф ормаци и об указанном каталоге. И спользуйте команд у ls -ld д ля вы вод а д етальной и нф ормаци и только об указанном каталоге, анео его сод ерж и мом. И спользуйте команд у ls –R д ля вы вод а сод ерж и мого каталога и всех его под каталогов. Э то такж еназы вается ре к урс ивны м вы вод ом. Д ля вы вод а сод ерж и мого текущ его каталога, отсорти рованного по послед ней д ате и зменени я ф айла, гд е ф айл, и зменённы й ранее д руги х, буд ет первы м в спи ске, вы полни теслед ующ ее: $ ls -lt drwx--x--x drwx--x--x drwx--x--x drwx--x--x -rwx--x--x -rwx--x--x
3
user1 staff 2 user1 staff 5 user1 staff 4 user1 staff 1 user1 staff 1 user1 staff
96 Aug 14 16:17 dir3 96 Aug 14 16:17 practice 96 Aug 14 16:17 dir1 96 Aug 14 16:17 dir2 1610 Jul 25 14:55 file1 28738 May 31 16:45 tutor.vi
13 -rwx--x--x -rwx--x--x -rwx--x--x -rwx--x--x -rwx--x--x -rwx--x--x -rwx--x--x -rwx--x--x -rwx--x--x $
1 1 1 1 1 1 1 1 1
user1 user1 user1 user1 user1 user1 user1 user1 user1
staff staff staff staff staff staff staff staff staff
218 May 31 16:45 file3 56 May 31 16:45 fruit 57 May 31 16:45 fruit2 0 May 31 16:45 file.l 0 May 31 16:45 file.2 0 May 31 16:45 file.3 105 May 31 16:45 file2 368 May 31 16:45 dante_1 1320 May 31 16:44 dante
Д ля вы вод а сод ерж и мого текущ его каталога, гд е послед ни й и зменённы й ф айл буд етв начале, вы полни теслед ующ ее: $ ls -ltr -rwx--x--x -rwx--x--x -rwx--x--x -rwx--x--x -rwx--x--x -rwx--x--x -rwx--x--x -rwx--x--x -rwx--x--x -rwx--x--x -rwx--x--x drwx--x--x drwx--x--x drwx--x--x drwx--x--x $
1 1
user1 staff user1 staff 1 user1 staff 1 user1 staff 1 user1 staff 1 user1 staff 1 user1 staff 1 user1 staff 1 user1 staff 1 user1 staff 1 user1 staff 4 user1 staff 5 user1 staff 2 user1 staff 3 user1 staff
1320 May 31 16:44 dante 368 May 31 16:45 dante_1 105 May 31 16:45 file2 0 May 31 16:45 file.3 0 May 31 16:45 file.2 0 May 31 16:45 file.l 57 May 31 16:45 fruit2 56 May 31 16:45 fruit 218 May 31 16:45 file3 28738 May 31 16:45 tutor.vi 1610 Jul 25 14:55 file1 96 Aug 14 16:17 dir2 96 Aug 14 16:17 dir1 96 Aug 14 16:17 practice 96 Aug 14 16:17 dir3
Со зд ани е к ат ал огов И спользуйте команд у mkdir д ля созд ани я каталогов. В ы мож ете созд авать каталоги , и спользуя какабсолютны е, таки относи тельны е пути д оступа. Э та команд а позволя ет вам указы вать более чем од но и мя каталога в од ной команд ной строке, созд авая несколько каталогов од новременно. Фо рм ат к о м анд ы mkdir [ -р ] им я_к ат ало га ... Зам ечани е - помни те, что си мвол ти льда (~), обозначающ и й ваш д омаш ни й каталог, д оступен во всех команд ны х и нтерпретаторах, заи сключени ем Bourne. Ч тобы созд ать каталог, вы д олж ны и меть соответствующ и е права д оступа (права д оступа буд ут обсуж д аться отд ельно). Е сли у вас нет нуж ны х прав д оступа, то при попы тке созд атькаталог вам буд ет вы вед ено сообщ ени е об ош и бке, похож еенаслед ующ ее: $ mkdir /export/home/Olympic mkdir: Failed to make directory "/export/home/Olympic"; Permission denied
Со зд ани е м ного уров нев ой с т рук т уры к ат ал огов Д ля од новременного созд ани я многоуровневой структуры каталогов и спользуйте параметр -р. В след ующ ем при мере команд а mkdir -р созд аёт каталог practice2 как под каталог текущ его каталога. В то ж е самое время команд асозд аётпод каталог dir1 в каталогеpractice2 и каталог admin в каталоге dir1. $ mkdir -р practice2/dir1/admin $ ls -lF
Ко пи ров ани е к ат ал огов
14 И спользуйте команд у cp с параметром -r д ля копи ровани я каталога и его сод ерж и мого в д ругой каталог. Е сли этот каталог не сущ ествует, он буд ет созд ан команд ой ср. Ф орматкоманд ы ср-ir ис хо д ны й _к ат ало г(и) к ат ало г_назначе ния При и спользовани и параметра -i команд а ср спраш и вает под тверж д ени я перед перезапи сью сущ ествующ его каталогаи ли ф айла. Ко пи ров ани е с одержи м огок ат ал ога в нов ый к ат ал ог След ующ и й при мер показы вает, каккопи роватьсущ ествующ и й каталог и всё его сод ерж и моев новы й в текущ ем рабочем каталоге. Е сли вы неи спользуетепараметр-r, получи тесообщ ени еоб ош и бке: ср: directoryname: is a directory. $ cd $ pwd /export/home/user1 $ Is dir3 planets $ ср dir3 new.dir ср: dir3: is a directory $ ср -r dir3 new.dir $ Is new.dir planets $
След ующ и й при мер показы вает, каккопи роватькаталог в д ругой, которы й не наход и тся в текущ ем рабочем каталоге: $ cd $ pwd /export/home/user1 $ cd dir3 $ ср -r planets ../dir1/constellation $ cd $ ср -ri dir1 new.dir /tmp ср: overwrite /tmp/dir1/coffees/beans (yes/no)? у ср: overwrite /tmp/dir1/constellation/mars (yes/no)? у ср: overwrite /tmp/dir1/constellation/pluto (yes/no)? у $ le -F /tmp dir1/ new.dir/ ... $
П ерем ещени е и переи м енов ани е фай л ов и к ат ал огов И спользуйте команд у mv д ля перемещ ени я и ли переи меновани я ф айла и ли каталога. Э та команд а не возд ействует на сод ерж и мое ф айла и ли каталога, она и зменя еттолько местополож ени еи ли заменя етстароеи мя нановое. Старое и мя соответствует и сход ному ф айлу, а новое и мя - новому. Е сли каталог назначени я несущ ествует, он буд етсозд ан. Фо рм ат к о м анд ы mv [ -i ] ис т о чник к ат ало г_назначе ния mv [ -i ] ис т о чник ... к ат ало г_назначе ния Параметр - i вы д аёт при глаш ени е д ля под тверж д ени я перед перемещ ени ем с перезапи сью любого сущ ествующ его ф айлановы м. •О твечая yes, вы под тверж д аетепереноси перезапи сь. •О твечая nо, вы пред отвращ аетеперезапи ськоманд ой mv ф айланазначени я . П ереи м енов ани е фай л ов в т ек ущем к ат ал оге След ующ и й при мер показы вает, какпереи меноватьф айл в текущ ем каталоге:
15 $ cd ~/dir1/coffees $ ls beans newfile $ mv nuts brands $ ls beans brands $
nuts
newfile
П ерем ещени е фай л ов в д ругой к ат ал ог След ующ и й при мер показы вает, какперемести тьф айл в д ругой каталог: $ pwd /export/home/user1/dir1/coffees $ ls beans brands $ mv brands ~ $ ls beans $ ls ~/b* /export/home/user1/brands
Е сли вы перемещ аете од и н каталог, и каталог назначени я не сущ ествует, то каталог переи меновы вается в каталог назначени я . Е сли вы перемещ аете несколько каталогов, и каталог назначени я не сущ ествует, тогд а вам буд ет вы вед ено след ующ ее сообщ ени е об ош и бке: mv: target_directory not found. П ереи м енов ани е к ат ал огов След ующ и й при мер показы вает, как и спользовать команд у mv д ля переи меновани я каталогов в текущ ем каталоге: $ cd $ mkdir maildir $ ls Reports dir2 file.1 brands dir3 file.2 dante dir4 file.3 dante_1 feathers file1 dir1 feathers_6 file2 $ $ mv maildir monthly $ ls Reports dir2 file.1 brands dir3 file.2 dante dir4 file.3 dante_1 feathers file1 dir1 feathers_6 file2
file3 file4 fruit fruit2 logfile
maildir new.dir practice practice2 tutor.vi
file3 file4 fruit fruit2 logfile
monthly new.dir practice practice2 tutor.vi
П ерем ещени е к ат ал ога в м ес т е с егос одержи м ым След ующ и й при мер показы вает, как и спользовать команд у перемещ ени я каталогавместесего сод ерж и мы м в новы й каталог:
mv
д ля
mv
д ля
$ pwd /export/home/user1 $ ls practice mailbox project projection research $ mv practice letters $ ls letters mailbox project projection research
П ереи м енов ани е фай л ов в д ругом к ат ал оге След ующ и й при мер показы вает, как и спользовать команд у переи меновани я ф айлав каталоге, отли чном оттекущ его: $ pwd /export/home/user1 $ mv letters/project letters/project2
16 $ ls letters mailbox project2
projection research
Уд ал ени е к ат ал огов В ы мож етеуд али тьненуж ны екаталоги , и спользуя команд ы rmdir и rm. •К оманд аrmdir уд аля еттолько пусты екаталоги . •К оманд аrm -r мож етуд аля тькаталоги , сод ерж ащ и еф айлы . Ф орматкоманд ы rmdir им я_к ат ало га(о в ) rm -r[i] им я_к ат ало га(о в ) П ред упрежд ени е — Д ля получени я под тверж д ени я перед уд алени ем любого ф айлаи спользуйтепараметр -i команд ы rm. Э тотпараметр запускаеткоманд у в и нтеракти вном реж и ме. Уд ал ени е пус т огок ат ал ога И спользуйтекоманд у rmdir д ля уд алени я пустого каталога, напри мер: $ cd $ pwd /export/home/user1 $ mkdir -p newdir/empty $ cd newdir $ ls -F empty/ $ rmdir empty $ ls $
Уд ал ени е к ат ал ога с с одержи м ым И спользуйтекоманд у rm -r д ля уд алени я непустого каталога, напри мер: $ cd $ pwd /export /home/user1 $ ls letters mailbox $ rm -r letters $ Is letters letters: No such file or directory $
И нт ерак т и в но е уд ал ени е к ат ал огов И спользуйтекоманд у rm -ir д ля и нтеракти вного уд алени я каталогов, напри мер: $ mkdir -p ~/practice/dir1 $ ls practice dir1 $ rm -ir ~/practice rm: examine files in directory practice (yes/no)? у rm; examine files in directory practice/dir1 (yes/no)? у rm: remove practice/dir1: (yes/no)? у rm: remove practice: (yes/no)? у $
Зам ечани е — В ы не мож ете уд али ть каталог, пока наход и тесь в нём. Н еобход и мо перемести ться в вы ш естоя щ и й каталог д ля уд алени я под каталога. 5.2. Ф ай л ы О пред ел ени е т и па фай л о в В О С Solaris сущ ествует много разли чны х ти пов ф айлов. К оманд у file и спользуютд ля опред елени я некоторы х ти пов ф айлов. Э таи нф ормаци я важ на, когд авы хоти теоткры тьи ли прочи татьф айл. Знани ети паф айлапомогаетвам
17 реш и ть, какую команд у и ли программу необход и мо и спользоватьд ля работы с ф айлом. Фо рм ат к о м анд ы file им я_ф ай ла(о в) Результат вы полнени я команд ы file часто, но не обя зательно, пред ставля ет собой од но и з след ующ и х: •Т екст - При меры , включая текст ф омата ASCII (American Standard Code for Information Interchange), англи йски й текст, текст команд и вы полня емы е скри пты команд ного и нтерпретатора. •Д анны е— Ф айлы д анны х, созд аваемы епри лож ени я ми . В некоторы х случая х показы вается ти п д анны х, напри мер, д ля д окументов FrameMaker. Е сли команд а file не мож ет опред ели тьти п ф айла, она показы вает, что это просто ф айл д анны х. • И сполня емы й и ли д вои чны й — При меры , включая ф айлы 32-би тного и сполня емого и внеш не-свя занного ф ормата (ELF) код а и д руги е д и нами чески свя занны е и сполня емы е ф айлы . Э тот ти п ф айлов показы вает, что ф айл команд аи ли программа. П рим е р опред елени ети патекстового ф айла: $ file dante dante:
commands text
В ы вод сод ерж и мого текстового ф айла. К оманд а cat (соед и нени е) вы вод и т на экран сод ерж и мое од ного и ли более текстовы х ф айлов. О на часто и спользуется д ля вы вод а небольш и х текстовы х ф айлов, т.к. cat показы ваетвсё сод ерж и моеф айланаэкранебез пауз. В ы такж емож етеи спользоватькоманд у cat д ля созд ани я короткого текстового ф айлабез и спользовани я текстового ред актора. Фо рм ат к о м анд ы cat [ им я_ф ай ла ... ] cat > им я_ф ай ла И спользовани екоманд ы cat д ля вы вод акороткого текстового ф айла. Д ля вы вод а на экран короткого текстового ф айла вы полни те след ующ ую команд у: $ cat dante The Life and Times of Dante by Dante Pocai Mention "Alighieri" and few may know about whom you are talking. Say "Dante," instead, and the whole world knows whom you mean. For Dante Alighieri, like Raphael, Michelangelo, Galileo, etc. is usually referred to by his first name. ... $
Е сли сод ерж и моеф айлане умещ ается наэкране, то верх ф айлапрокрути тся за экран. При и спользовани и окна с ф ункци ей прокрутки , такого как окно терми налав Common Desktop Environment (CDE), д ля того, чтобы уви д етьвесь ф айл, мож но прокрути тьэкран назад , и спользуя полосу прокрутки . И спользовани екоманд ы cat д ля созд ани я небольш ого текстового ф айла. Д ля созд ани я небольш ого текстового ф айлавы полни теслед ующ ую команд у: $ cat > newfile
18 Затем вы мож ете наби рать текст в этот новы й ф айл. Д ля сохранени я сод ерж и мого ф айланаж ми теControl-D в пустой строке. П ред упрежд ени е. Е сли ф айл с таки м и менем уж е сущ ествует, и параметр noclobber неустановлен, то новы й ф айл замени тсобой сущ ествующ и й. Соед и нени енесколь ки х ф айлов. И спользуйте команд у cat д ля соед и нени я сод ерж и мого д вух ф айлов в од и н новы й ф айл, напри мер: $ cat filename1 filename2 > newfile1
Зам ечани е. И мя ф айла после знака ">" не д олж но бы тьтаки м ж е, каклюбое и мя ф айлаперед эти м знаком, и начекоманд аcat вы д астслед ующ еесообщ ени е об ош и бке: cat: input/output files 'и мя _ф айла' identical. М ет ас и м в ол ы Сущ ествуютещ ё д ваполезны х метаси мволав команд ном и нтерпретаторе- это си мвол перенаправлени я вы вод а (>) и си мвол конвейера (pipe) (|). Си мвол перенаправлени я (>) берётвы вод команд ы и направля етего в указанны й ф айл. Си мвол конвейера(|) и спользуется в команд ной строкед ля направлени я вы вод а од ной команд ы навход д ругой команд е. П росм о т р с одержи м огофай л а Д ля просмотра сод ерж и мого больш ого текстового ф айла и спользуйте команд у more. При и спользовани и этой команд ы сод ерж и мое текстового ф айла показы вается наэкраненевсё сразу, апо частя м, при показекаж д ой и з которой вни зу экранапоя вля ется след ующ еесообщ ени е: --Моrе--(n%)
n% - это процент уж е показанной части ф айла. К огд а сод ерж и мое ф айла показы вается полностью, то поя вля ется при глаш ени екоманд ной строки . К оманд а more и спользуется при показе страни ц встроенного руковод ства так, что клави ш и управлени я прокруткой таки е ж е, каки е и спользуются д ля управлени я показом страни ц встроенного руковод ства. Зам ечани е - И спользовани е команд cat и ли more д ля чтени я д вои чны х ф айлов мож ет при вести терми нал и ли окно к остановке. Е сли это прои зойд ёт, то закройте окно терми налаи откройте новое и ли вы бери теReset -> Soft Reset и з меню CDE Options. Фо рм ат к о м анд ы more [ им я_ф ай ла ... ] К лави ш и управлени я прокруткой. В строке --More-- вы мож ете и спользовать клави ш и д ля управлени я возмож ностя ми прокрутки . К лави ш а О пи сани е Пробел Прокрутканаслед ующ и й экран Return Прокрутканаод ну строку вни з B В озвратнаод и н экран F Прокруткавперёд наод и н экран H В ы вод меню помощ и и опи сани я возмож ностей Q В ы ход и возвратв команд ную строку команд ного и нтес рк пр етар тор /string Пои "впе ёд а " строки string
19 Пои скслед ующ его вхож д ени я строки string N П росм о т р бо л ьш и х фай л ов И спользуйте команд у pg д ля просмотра ф айла, д ли на которого больш е чем од и н экран. Э та команд а д елает паузы после показа каж д ого экрана текста и вы вод и т знак ": " в конце страни цы . Н аж ми те клави ш у Return д ля вы вод а след ующ его экрана и ли и спользуйте клави ш и прокрутки , при вед енны е ни ж е. К оманд а pg вы вод и т при глаш ени е "EOF:", когд а д ости гнут конец ф айла. Н аж ми теклави ш у Return д ля возвращ ени я в при глаш ени екоманд ной строки . Фо рм ат к о м анд ы pg им я_ф ай ла(о в ) К лави ш а
О пи сани е
Return l d
Прокруткакслед ующ ему экрану Показ след ующ ей строки Показ полови ны след ующ ей страни цы
.
Показы ваетзаново текущ ую страни цу
+/ш аблон/< Return> Пои сквперёд строки ш аблон. $ Перемещ аетнапослед нюю страни цу h Показы ваетменю помощ и и опи сани я возмож ностей q
В ы ход и возвратв при глаш ени екоманд ного и нтерпретатора
Зам ечани е - К оманд аpg неработаетсд вои чны ми ф айлами . Выв о д перв ых с т рок фай л а К оманд а head показы вает первы е 10 строк ф айла. В ы мож ете и змени ть коли чество показы ваемы х строк, и спользуя параметр -n. Фо рм ат к о м анд ы head [ -n ] [ им я_ф ай ла ... ] Выв о д ук азанногок ол и чес т в а с т рок с начал а фай л а Д ля вы вод а указанного коли чества строкначала ф айла вы полни те след ующ ую команд у: $ head -6 /usr/diet/words 10th 1st 2nd 3rd 4th 5th $
В этом при мере команд а head спараметром -6 вы вод и тна экран первы е ш есть строкф айла/usr/dict /words. Выв о д посл ед ни х с т рок фай л а К оманд а tail показы вает послед ни е 10 строк од ного и ли более ф айлов. В ы мож етеи змени тьколи чество показы ваемы х строк, и спользуя параметры -n и ли +n. Е сли вы и спользуете параметр -n, команд а tail счи тает относи тельно конца ф айла. При и спользовани и параметра +n команд аtail вы вод и тнаэкран строки сn-ной д о концаф айла. Фо рм ат к о м анд ы tail [-n] I [+n] [ им я_ф ай ла ]
20 Выв о д ук азанногок ол и чес т в а с т рок с к онца фай л а Д ля вы вод ауказанного коли чествастроксконцаф айлавы полни теслед ующ ую команд у: $ tail -5 /usr/dict/words zounds z's zucchini Zurich zygote $
В этом при мере команд а tail с параметром -5 вы вод и т послед ни е пя тьстрок ф айла/usr/dict/words. Выв о д с т рок , начи ная с ук азанногом ес т а в фай л е Д ля вы вод астроксуказанного местав ф айлевы полни теслед ующ ую команд у: $ tail +23 /uer/dict/words
В этом при мере команд а tail с параметром +23 вы вод и т строки с 23 д о конца ф айла/usr/dict/words. Выв о д ко л и чес т в а с т рок , с л ов и с и м в ол ов фай л а К оманд а wc показы вает коли чество строк, слов и си мволов, сод ерж ащ и хся в ф айле. Фо рм ат к о м анд ы wc [ -lwcm ] [ им я_ф ай ла ... ] В ы мож етеи спользоватьслед ующ и епараметры скоманд ой wc: -l В ы вод коли чествастрок -w В ы вод коли честваслов -с В ы вод коли чествабайт -m В ы вод коли честваси мволов При и спользовани и команд ы wc без параметров буд ет вы вед ено коли чество строк, слов и си мволов, сод ерж ащ и хся в ф айле. О пред ел ени е к о л и чес т в а с т ро к в фай л е Д ля опред елени я коли чествастрокв ф айлевы полни теслед ующ ую команд у: $ wc -l dante 33 dante $
Со зд ани е пус т ых фай л ов И спользуйте команд у touch д ля созд ани я пустого ф айла. Е сли в си стеме уж е сущ ествует ф айл и ли каталог с таки м ж е и менем, каки у созд аваемого, тогд а команд аtouch обновля етего время и зменени я и д оступанатекущ ее. Фо рм ат к о м анд ы touch им я_ф ай ла ... В команд ной строке при созд ани и новы х ф айлов вы мож ете указы ватькак абсолютны й, таки относи тельны й пути д оступа. П еренаправ л ени е и в ыв о д со д ержи м огофай л а и с пол ьзуя к ом анд у tee И спользуйте команд у tee в потокед ля получени я д анны х на вход еи запи си и х какв станд артноеустройство вы вод а, таки в указанны й ф айл. К оманд а tee копи рует станд артны й ввод в станд артны й вы вод , запи сы вая копи ю и нф ормаци и в ф айл (Ри с.2).
21
Ри с. 2. К оманд аtee Фо рм ат к о м анд ы tee [ -а] им я_ф ай ла . . . Дубл и ров ани е д анных В след ующ ем при мере вы вод команд ы ls запи сы вается в ф айл logfile и такж е вы вод и тся наэкран по мереего заполнени я . $ ls -R I tee .: total 208 -rwxr-----rwxr----drwx--x--x 5 drwx--x--x 4 drwx--x--x 3 drwx--x--x 3 -rwxr-----rwxr-----rwxr-----rwxr-----rwxr-----rwxr-----rwxr----drwx--x--x 2 -rwxr-----
logfile I more
1 1
1 1 1 1 1 1 1 1
user1 user1 user1 user1 user1 user1 user1 user1 user1 user1 user1 user1 user1 user1 user1
staff staff staff staff staff staff staff staff staff staff staff staff staff staff staff
1320 368 96 96 96 96 0 0 0 14502 7251 218 56 96 28738
Jun Jun Jun Jun Jun Jun Jun Jun Jun Jun Jun Jun Jun Jun Jun
31 31 14 14 14 14 31 31 31 14 14 31 31 14 31
16: 44 16:45 16:17 16:17 16:17 16:17 16:45 16:45 16:45 17:05 17:05 16:44 16:44 16:17 16:45
dante dante_1 dir1 dir2 dir3 dir4 file.1 file.2 file.3 file1 file2 file3 fruit practice tutor.vi
До бав л ени е д анных к фай л у Е сли вы и спользуете параметр –а с команд ой tee, то новая и нф ормаци я буд ет д обавля ться кф айлу, анеперезапи сы ватьего и меющ ееся сод ерж и мое. $ cal | tee -a August 2000 S M Tu W Th 1 6 7 8 9 13 14 15 1617 20 21 22 23 24 27 28 29 30 31
logfile F S 2 3 4 10 11 12 18 19 25 26
5
Ко пи ров ани е фай л ов К оманд а ср копи рует сод ерж и мое ф айла в д ругой ф айл, такж е она копи рует несколько ф айлов свозмож ностью пред отвращ ени я перезапи си сущ ествующ и х ф айлов. Фо рм ат к о м анд ы ср[ -ir ] ф ай л_ис т о чник ф ай л_назначе ния ср[ -ir ] ф ай л_ис т о чник ... к ат ало г_назначе ния К опи ровани еф айлав д ругой ф айл. След ующ и й при мер показы вает, каккопи роватьод и н ф айл в новы й в том ж е каталоге. $ cd $ pwd /export/home/user1
22 $ ср file3 feathers $ ls Reports dir1 dir4 file.2 file2 fruit practice dante dir2 feathers file.3 file3 fruit2 practice2 dante_1 dir3 file.1 filel file4 logfile tutor.vi $ ср feathers feathers_6 $ Is Reports dir2 feathers_6 file1 fruit practice2 dante dir3 file.l file2 fruit2 tutor.vi dante_1 dir4 file.2 file3 logfile dir1 feathers file.3 file4 practice
След ующ и й при мер показы вает, каккопи роватьнесколько ф айлов в каталог, отли чны й оттекущ его: $ pwd /export/home/user1 $ ls dir1 coffees fruit trees $ cp feathers feathers_6 dir1 $ ls dir1 coffees feathers fruit trees $
feathers_6
Д ля пред отвращ ени я перезапи си сущ ествующ и х ф айлов при копи ровани и и спользуйте команд у cp с параметром -i как пред упреж д ени е. Параметр -i вы д аёт при глаш ени е д ля под тверж д ени я перед перезапи сью любого сущ ествующ его ф айлановы м. •О твечая yes, вы под тверж д аетеперезапи сь. • О твечая no, вы пред отвращ аете перезапи сь команд ой cp сущ ествующ его ф айла. Уд ал ени е фай л ов В ы мож ете и спользоватькоманд у rm д ля уд алени я од новременно од ного и ли нескольки х ф айлов. Фо рм ат к о м анд ы rm [ -ir ] им я_ф ай ла ... Уд ал ени е нес к ол ьк и х фай л о в В ы мож етеуд али тьнесколько ф айлов од новременно, напри мер: $ cd ~/letters $ pwd /export/home/user1/letters $ ls mailbox project2 projection research $ rm research project2 $ ls mailbox projection $
И спользуйте команд у rm с параметром -i д ля вы вод а пред упреж д ени я . Параметр -i вы вод и тпри глаш ени ед ля под тверж д ени я перед уд алени ем любого ф айла. •О твечая yes, вы под тверж д аетеуд алени е. •О твечая nо, вы запрещ аетекоманд еrm уд аля тьф айл.
23 П ои с к фай л ов с и с пол ьзов ани ем к о м анд ы find И спользуйте команд у find д ля пои ска ф айлов в д ереве каталогов. Э та команд а д аёт вам возмож ностьи скатьф айлы по зад анному кри тери ю, такому каки мя ф айла, размер, влад елец, время и зменени я и ли ти п. К оманд а find осущ ествля етрекурси вны й пои скв д ереве каталогов тех ф айлов, которы есоответствуюткри тери я м пои ска. К актолько find наход и т ф айлы , которы е соответствуют кри тери я м пои ска, то пути д оступакни м вы вод я тся наэкран. Фо рм ат к о м анд ы find п ут ь в ы раж е ние (я) д е й с т вие (я) Первы й аргументв команд ной строке- это путьд оступа, в котором начи нается пои ск. Э то мож етбы тькакабсолютны й, таки относи тельны й путь. О стальны е аргументы зад ают кри тери й пои ска, по которому буд ет вести сь пои ск ф айлов, и д ействи я , которы е буд ут прои звод и ться над найд енны ми ф айлами . А ргументы , и спользуемы ескоманд ой find Аргум ент п ут ь в ы раж е ние
О пи с ани е Путьккаталогу, в котором буд етвести сьпои ск. К ри тери й пои ска, указанны й од ни м и ли более параметрами . У казани е многи х параметров говори т find пони мать как запрос "AND" и все перечи сленны евы раж ени я д олж ны возврати тьи сти ну.
В ы раж ени я , и спользуемы ескоманд ой find Выражени е
О пи с ани е
-name им я_ф ай ла
Пои ск ф айлов по и мени . М етаси мволы д опусти мы , если указы ваются внутри " ". Пои скф айлов, размер которы х больш ечем +n, меньш ечем -n и ли равны п .п , зад аётся в 512-байтны х блоках. Пои скф айлов, ккоторы м прои звод и лся д оступ болеечем +п д ней назад , менеечем -n д ней назад и ли ровно n д ней. Пои скф айлов, которы е бы ли и зменены более чем +n д ней назад , менее чем -n д ней и ли ровно n д ней. Пои сквсех ф айлов, которы е при над леж ат пользователю с и менем login ID. Пои скпо ти пу ф айла, напри мер: f (ф айл) и ли d (каталог). Пои скф айлов, которы еи меютсоответствующ и еправад оступа.
-size [+|-]n -atime [+|-]n -mtime [+|-]n -user login ID -type -perm
Д ействи я , и спользуемы ескоманд ой find Дей с т в и е О пи с ани е -ехеск о м анд а {} \; А втомати ческое вы полнени е указанной команд ы на каж д ы й найд енны й ф айл. М нож ество квад ратны х скобоки {} разд еля ют и мя ф айла откоманд ы в вы раж ени и . Пробел, обратная косая чертаи точка с запя той ( \;) отд еля ют конец команд ы . Перед знаком обратной косой черты (\) д олж ен стоя тьпробел. -ok команд а{} \; Ук азыв ает на и нт ерак т и в ную форм у -ех ес . Эт от ребует в в о да перед т ем , к ак к ом анд а find в ыпол ни т к ом анд у на фай л , в ов с ё м о с т ал ьно м функ ци онал ьност ь с ов пад ает с д ей с т в и ем -ех ес . -print Ук азыв ает к ом анд е find в ыв ес т и и м я т ек ущегонай д енногофай л а на эк ран т ерм и нал а. И с пол ьзует с я поум ол чани ю. -ls Ук азыв ает к ом анд е find в ыв ес т и и м я т ек ущегонай д енногофай л а на эк ран т ерм и нал а. И с пол ьзует с я поум ол чани ю.
24 След ующ и епри меры показы ваютвозмож ности команд ы find. • Д ля пои ска ф айлов с и менем core, начи ная с каталога root (/), вы полни те команд у: $ find / -name core
•Д ля пои ска ф айлов с и менем core, начи ная с ваш его д омаш него каталога, с уд алени ем всех найд ены х ф айлов вы полни теслед ующ ую команд у: $ find ~ -name core -exec rm {} \;
•Д ля пои скавсех ф айлов, начи ная стекущ его каталога, которы енеи зменя ли сь запослед ни е90 д ней, вы полни текоманд у: $ find . -mtime +90
•Д ля пои ска ф айлов, размер которы х больш е, чем 57 блоков (512-байтовы е блоки ), начи ная сд омаш него каталога, вы полни текоманд у: $ find ~ -size +57
•Д ля пои скаф айлов, и менакоторы х заканчи ваются наси мволы "tif", начи ная с каталога/usr, вы полни текоманд у: $ find /usr -name ‘*tif’
В О С Soalris сущ ествует несколько ути ли т, которы е позволя ютсравни ватьд ва ф айлаи вы вод и тьразли чи я , если таковы ебуд утнайд ены . П ои с к разл и чи й с и с пол ьзов ани ем к ом анд ы cmp И спользуйте команд у сmp д ля сравнени я ф айлов на пред мет вы я влени я разли чи й. Э та команд а печатает результаты , только если отли чи я меж д у ф айлами найд ены . Е сли не вы вед ено ни каки х результатов, то, значи т, ф айлы од и наковы . К оманд а сmр д елает побайтовое сравнени е каж д ого ф айла. Е сли байты в ф айлах разли чаются , то тогд а команд а сmр вы вод и т номер байта и номер строки , гд евы я влено первоеразли чи е, и затем прекращ аетсвою работу. Э такоманд аработаеткаксд вои чны ми , таки сASCII ф айлами . Фо рм ат к о м анд ы . сmр им я_ф ай ла1 им я_ф ай ла2 И спользовани е команд ы , сmр д ля сравнени я ф айлов, которы е каж утся од и наковы ми $ сmр fruit fruit2 fruit fruit2 differ: char 27, line 5
В этом при мере найд ено первое несоответстви е меж д у д вумя ф айлами . Э то разли чи евозни кло на27 си мволенастроке5. П ои с к т ек с т о в ых разл и чи й с и с по л ьзов ани ем к ом анд ы diff К оманд а diff - это д ругая команд а, которая и спользуется д ля пои ска разли чи й меж д у ф айлами . Результатом вы полнени я этой команд ы буд ет вы вод всех строк, гд е и меются разли чи я меж д у д вумя текстовы ми ф айлами с пред оставленны ми вам рекоменд аци я ми о том, какотред акти роватьод и н ф айл д ля того, чтобы сд елать его таки м ж е, какд ругой. Фо рм ат к о м анд ы diff -параметри мя _ф айлаим я_ф ай ла Параметры команд ы diff: Параметр -i -с
О пи сани е И гнори руетреги стр си мволов, напри мер, А экви валентно а. Созд аётконтекстны й спи сокразли чи й.
25 При и спользовани и команд ы diff с параметром -с д ля сравнени я ф айлов результаты буд утвы вод и ться в ви д етрёх секци й. Первая секци я сод ерж и ти менасравни ваемы х ф айлов и и х д аты созд ани я , затем каж д оеи зменени е, разд елённоели ни ей звёзд очек(*). В торая секци я сод ерж и т строки первого ф айла, которы е отли чаются от соответствующ и х строквторого ф айла. Строки , уд алённы е и з первого ф айла, помечаются си мволом '-'.В больш и нстве случаев три строки , пред ставля ющ и е первоеразли чи е, вы вод я тся какконтекстная и нф ормаци я . В третьей секци и сод ерж атся строки второго ф айла, которы е отли чаются от соответствующ и х строк первого ф айла. Э ти строки , д обавленны е во второй ф айл, помечаются си мволом '+'. Строки , которы еперенесены и з од ного ф айлав д ругой, помечены в обои х ф айлах си мволом '!'. В больш и нстве случаев три строки , пред ставля ющ и е первое разли чи е, вы вод я тся как контекстная и нф ормаци я . Н и ж е при вед ён при мер и спользовани я команд ы diff д ля сравнени я ф айлов с параметром -с: $ cat fruit lemon orange apple banana pear mango tomato pomegranate $ cat fruit2 lemon orange apple banana tomato guava mango pomegranate $ diff -c fruit fruit2 *** fruit Wed May 31 16:45:05 2000 --- fruit2 Wed May 31 16:45:05 2000 *************** *** 2,8 **** orange apple banana - pear - mango tomato pomegranate --- 2,8 ---orange apple banana tomato + guava + mango pomegranate $
26 Со рт и ров к а д анных К оманд аsort сорти руеттекстовы естроки в од ном и ли болееф айлах и вы вод и т результатнаэкран. К оманд а sort пред оставля ет бы стры й и простой метод органи заци и д анны х в чи словом и ли алф ави тном поря д ке. По умолчани ю sort и спользует си мволы пробела и табуля ци и д ля разд елени я разли чны х полей в д анны х ф айла. Фо рм ат к о м анд ы sort (-/+)п арам е т ры им я_ф ай ла(о в ) Параметры , д оступны е с команд ой sort, и спользуются д ля опред елени я ти па сорти ровки , а такж е поля , по которы м буд ет прои звод и ться сорти ровка, при вод я тся ни ж е: Параметр О пи сани е -n (+|-)n -г -f -M
Прои звод и тчи словую сорти ровку. Н ачи нает(+n) и ли заканчи вает(-n) сорти ровку поля , след ующ его заполем n. М еня етпоря д оксорти ровки . И гнори руетреги стр си мволов. Сорти руетпервы етри си мволаполя каксокращ ени еи мени меся ца.
-d
И спользуется словарная сорти ровка. Сравни ваются только буквы , ци ф ры и пробелы , всеостальны еси мволы и гнори руются . В ы вод результатов в ф айл им яф ай ла.
-o им яф аила -b -t с им в о л
И гнори рует начальны е пробелы при опред елени и начальной и конечной пози ци й ограни ченного ключасорти ровки . И спользует си мвол как разд ели тельполей. Е сли параметр -t не указан, то по умолчани ю в качестве разд ели телей полей и спользуются си мволы пробела и табуля ци и .
И спользовани екоманд ы , sort сразны ми параметрами . Н аслед ующ и х при мерах показаны разли чны епути и спользовани я команд ы sort сразны ми параметрами : $ cat fileA Annette 48486 Jamie 48481 Fred 48487 Sondra 48483 Janet 48482 $ sort fileA Annette 48486 Fred 48487 Jamie 48481 Janet 48482 Sondra 48483 $ sort +1n fileA Jamie 48481 Janet 48482 Sondra 48483 Annette 48486 Fred 48487
Н а первом при мере показано сод ерж и мое ф айла fileA, вы вед енное на экран с помощ ью команд ы cat.
27 Первая команд аsort осущ ествля етсорти ровку в алф ави тном поря д ке, начи ная с первого си мволакаж д ой строки . Д алее прои звод и тся чи словая сорти ровка по второму полю (sort пропускает од и н разд ели тельсси нтакси сом +1). И спользовани екоманд ы sort по разны м поля м в ф айле. След ующ и е при меры показы вают, как и спользовать команд у sort д ля сорти ровки д анны х по разны м поля м в ф айле (вы вод результатов не при вод и тся ). $ ls -I f* > list $ cat list -rw-r--r-1 user1 staff -rw-r--r-1 user1 staff -rw-r--r-1 user1 staff -rw-r--r-1 user1 staff -rw-r--r-1 user1 staff -rw-r—r-1 user1 staff -rw-r--r-1 user1 staff -rw-r--r-1 user1 staff -rw-r--r-1 user1 staff $ $ sort -rn +4 list -o num.list $ cat num.list -rw-r--r-1 user1 staff -rw-r--r-1 user1 staff -rw-r--r-1 user1 staff -rw-r--r-- 1 user1 staff -rw-r--r-1 user1 staff -rw-r--r-- 1 user1 staff -rw-r—r-1 user1 staff -rw-r--r-1 user1 staff -rw-r—r-1 user1 staff $ $ sort +5M +6n list -o update.list $ cat update.list
0 Feb 25 12 54 file.1 0 Feb 25 12 54 file.2 0 Feb 25 12 54 file.3 1696 Feb 22 14 51 file1 156 Mar 1 14 48 file2 218 Feb 22 14 51 file3 137 Feb 22 14 51 file4 56 Feb 22 14 51 fruit 57 Feb 22 14 51 fruit2
1696 Feb 22 14 51 file1 218 Feb 22 14 51 file3 156 Mar 1 14 48 file2 137 Feb 22 14 51 file4 57 Feb 22 14 51 fruit2 56 Feb 22 14 51 fruit 0 Feb 25 12 54 file.3 0 Feb 25 12 54 file.2 0 Feb 25 12 54 file.1
В первом при мере вы вод команд ы ls запи сы вается в ф айл list. Сод ерж и мое этого ф айлавы вод и тся наэкран спомощ ью команд ы cat. Первая команд а sort вы полня ет обратную чи словую сорти ровку по пя тому полю и запи сы ваетрезультатв ф айл num. list. В о втором при мере команд а sort вы полня ет многоуровневую сорти ровку по поля м 6 и 7 в ф айлеlist. •Параметр+5М зад аёталф ави тную сорти ровку по меся цу в ш естом поле. •Параметр +6n зад аётци ф ровую сорти ровку второго уровня по д ня м в сед ьмом поле. •Параметр-о помещ аетрезультатв ф айл update. list. П ои с к т ек с т а в фай л ах О С Solaris пред оставля ет множ ество команд , и спользуемы х д ля пои ска в сод ерж и мом од ного и ли нескольки х ф айлов зад анного си мвольного ш аблона. Ш аблон мож етбы тьод ни м си мволом, строкой, словом и ли пред лож ени ем. По опред елени ю си мвольны й ш аблон, и спользуемы й при пои скед ля сравнени я од и наковы х си мволов, назы вается регуля рны м вы раж ени ем (RE). • К оманд а grep осущ ествля ет глобальны й пои ск регуля рны х вы раж ени й в ф айлах и вы вод и т все строки , сод ерж ащ и е регуля рное вы раж ени е, на станд артноеустройство вы вод а.
28 Зам ечани е — Н азвани е команд ы grер прои сход и т и з текстового ред актора UNIX, которы й и спользуетпослед овательностькоманд g/ге/р, которая означает global/regular expression/print. • К оманд ы egrep и fgrep я вля ются вари антами grер; еgrер и спользует расш и ренны е регуля рны е вы раж ени я , а fgrep, в отли чи е от регуля рны х вы раж ени й, и спользуетф и кси рованны естроки . И спользовани екоманд ы grер. К оманд а grер осущ ествля ет пои ск в сод ерж и мом од ного и ли нескольки х ф айлов на пред мет сравнени я с регуля рны м вы раж ени ем и ли си мвольны м ш аблоном. Е сли совпад ени е буд ет найд ено, то д гер вы вед ет на экран каж д ую строчку, сод ерж ащ ую совпад ени е, и зменени е самого ф айла при этом не прои звод и тся . Фо рм ат к о м анд ы grерп арам е т р(ы ) шабло ним я_ф ай ла(о в ) К оманд а grep пред оставля ет больш ое коли чество параметров д ля и зменени я способапои скаи ли вы вод арезультатов. Н екоторы ечасто и спользуемы епараметры : Параметр -i -l -n -v -с -w
О пи сани е Зад аётреж и м и гнори ровани я реги стра, си мволы верхнего и ни ж него реги стров счи таются и д енти чны ми . Перечи сля еттолько и менаф айлов, которы есод ерж атнайд енны естроки . Зад аётпростановку относи тельного номераккаж д ой строкев ф айле. М еня етуслови я пои сканаобратны ед ля вы д ачи только тех строк, которы ене соответствуютш аблону. Зад аётвы вод только коли чествастрок, которы есод ерж атш аблон. Зад аётпои сквы раж ени я какслова.
Д алее пред ставлены при меры и спользовани я команд ы grер по пои ску с при менени ем регуля рны х вы раж ени й: •Д ля пои скавсех строк, которы есод ерж ат"root", в ф айле/etc/group, вы полни те след ующ ую команд у: $ grер -n root /etc/group
• Д ля пои ска всех строк, которы е не сод ерж ат "root", в ф айле /etc/group, вы полни теслед ующ ее: $ grep -v root /etc/group
• Д ля пои ска только тех ф айлов, которы е сод ерж ат "root", вы полни те след ующ ее: $ cd /etc $ grep -1 root group pasawd hosts group passwd $
Зам ечани е - при пои скев нескольки х ф айлах, в результатах пои скаи мя ф айла буд етвы вод и ться в каж д ой строке, гд енайд енаи скомая комби наци я си мволов. При пои скетолько в од ном ф айлевы вод и ться буд уттолько результаты . •Д ля пои ска"the" во всех ф айлах каталога/etc свы вод ом только и мён ф айлов, гд еестьстроки , сод ерж ащ и е"the" и ли "The", вы полни теслед ующ ее: $ cd /etc $ grep -li the *
• Д ля пои ска "root" в ф айле /etc/group с вы вод ом только коли чества строк, сод ерж ащ и х это слово, вы полни теслед ующ ую команд у: $ grep -с root group 10
29 $
•Д ля пои ска"mar 1" в вы вод екоманд ы ls -la вы полни теслед ующ ее: $ ls -la | grep -i 'mar 1’ prw------1 root -r—r--r-1 root prw------1 root $
root root root
0 Mar 1 11:05 initpipe 806 Mar 1 13:39 irmttab 0 Mar 1 11:06 utmppipe
Е сли д ата вы раж ена од ной ци ф рой, то ключд ля команд ы grep д олж ен и меть д вапробеламеж д у меся цем и д нём, напри мер: М аr 1. К оманд аgrep под д ерж и ваетнесколько метаси мволов в регуля рны х вы раж ени я х д ля опред елени я ш аблона: М етаси мвол Значени е
При мер
Результат
^ $
Знакначаластроки '^pattern' Знакконцастроки 'pattem$'
В ы бор всех строк, начи нающ и хся с ^pattern В ы бор всех строк, заканчи вающ и хся на pattern.
*
Соответствует '[a-z]*' любому коли честву си мволов О бозначает од и н 'p.....n' любой си мвол
В ы бор алф ави тны х си мволов ни ж него реги стра
.
[]
[^]
В ы бор строк, сод ерж ащ и х си мвол 'р' и через пя ть си мволов след ующ и й за ни м си мвол 'n' В ы бор строк, сод ерж ащ и х 'Pattern' и ли 'pattern'
Соответствует ' [Pp]attern' од ной пози ци и в ключепои ска Соответствует '[^a- m]attern' В ы бор строк, не сод ерж ащ и х си мволы в од ному си мволу не д и апазонеот'а' д о "m" и след ующ и х перед в д и апазонепои ска "attern"
Д алее пред ставлены при меры и спользовани я метаси мволов в регуля рны х вы раж ени я х. •Д ля вы вод а на экран всех строкф айла /etc/passwd, начи нающ и хся с "root", вы полни теслед ующ ую команд у: $ grep '^root' /etc/passwd
• Д ля вы вод а всех строк и з ф айла /etc/passwd сод ерж ащ и х си мвол 'А ', след ующ и е за ни м три любы х си мвола и заканчи вающ и хся си мволом 'n', вы полни теслед ующ ую команд у: $ grep 'а...n' /etc/passwd
•Д ля вы вод а всех строк, которы е оканчи ваются на "adm" в ф айле /etc/group, вы полни теслед ующ ую команд у: $ grep 'adm$' /etc/group
И спользовани екоманд ы egrep. К оманд а egrep осущ ествля ет пои ск в сод ерж и мом од ного и ли нескольки х ф айлов зад анного ш аблона с и спользовани ем расш и ренного набора метаси мволов в регуля рны х вы раж ени я х. К оманд а egrep и спользует несколько новы х метаси мволов регуля рны х вы раж ени й в д обавлени е ко всем метаси мволам, и спользуемы м с команд ой grep.
30 Фо рм ат к о м анд ы egrep [ -п арам е т ры ] шабло ним я_ ф ай ла . . . Н и ж е при вод я тся метаси мволы регуля рны х вы раж ени й, которы еи спользуются скоманд ой egrep. М етаси мвол О пи сани е При мер + Соответствует од ному '[a-z]+ark' и ли более пред ш ествующ ему си мволу х|у (|)
Результат В ы бор од ного и ли более си мволов ни ж него реги стра, за которы ми след ует "ark" (напри мер, "airpark","bark", "dark", "landmark", "shark", "sparkle", "trademark") Соответствует од ному и з 'apple|orange' В ы бор од ного и з вы раж ени й х и ли у
Си мволы групп
'(1|2)+''search В ы бор од ного и ли более поя влени й (es|ing)+' (напри мер, 1 и ли 2, searches и ли searching)
В след ующ и х при мерах показаны разли чны е способы и спользовани я команд ы еgrер: •Д ля пои скавсех строк, сод ерж ащ и х си мвол "N" и след ующ и езани м си мволы 'е' и ли 'о' од и н и ли несколько раз, вы полни теслед ующ ую команд у: $ еgrер 'N(e|o)+' /etc/passwd
• Д ля пои ска строк, сод ерж ащ и х "Network Admin" и ли "uucp Admin", вы полни теслед ующ ую команд у: $ еgrер '(Network|uucp) Admin' /etc/paBBwd
И спользовани екоманд ы fgrep. К оманд а fgrep осущ ествля ет пои ск в ф айле ключевого вы раж ени я как ф и кси рованной строки . Е ё работа отли чается от работы grep и egrep, т.к. она обрабаты вает все си мволы и любы е метаси мволы регуля рны х вы раж ени й, указанны е в команд ной строке, как обы чны е си мволы . Д ля этой команд ы специ альное значени е и меют только д ва си мвола: знак вопроса (?) и знак д оллара($). И спользуйте команд у fgrep д ля пои ска словосочетани й в ф айлах, сод ерж ащ и х метаси мволы . Фо рм ат к о м анд ы fgrep п арам е т р(ы ) шабло ним я_ф ай ла(о в ) Д ля пои ска всех строк в ф айле, сод ерж ащ и х строку текста и си мволы , с помощ ью команд ы fgrep вы полни теслед ующ ее: $ fgrep '*' /etc/system
6.П ечат ь 6.1. П ечат ь и зк о м анд ной с т ро ки К оманд а 1р посы лает текстовы е ф айлы на печать. И з команд ной строки вы мож ете печатать текст ASCII и ли ф айлы PostScript™ . He и спользуйте этот метод д ля печати ф айлов д анны х, таки х как д вои чны е ф айлы и ли ф айлы , созд анны епри лож ени я ми . Фо рм ат к о м анд ы lр[п арам е т ры ] им я_ф ай ла(о в )
31 Параметры , и спользуемы ескоманд ой lр: -d п ринт е р У казы ваетнуж ны й при нтер. Е сли вы печатаетенапри нтерепо умолчани ю, параметр-d указы ватьненуж но. -о nobanner У казы вает, что и нф ормаци онную страни цу печататьненуж но. -n чис ло Зад аётпечатьуказанного коли чествакопи й ф айла. -m Посы лаетвам сообщ ени епо электронной почтео том, что зад ани е вы полнено. Д ля печати ф айла feathers, наход я щ егося в ваш ем д омаш нем каталоге, на при нтерпо умолчани ю вы полни теслед ующ ую команд у: $ lp ~/feathers request id is printerA-419 (1 file(s)) $
Э тотпри мер показы вает, какмож но указы ватьпри нтер, отли чны й отпри нтера по умолчани ю. Д ля указани я д ругого при нтера (напри мер printеrВ ) вы д олж ны и спользоватьпараметр-d. $ lp -d printers ~/feathers request id is printerB-93 (1 file(s)) $
6.2. Выв о д с ост о яни я при нт ера и очеред ей Состоя ни еочеред и при нтеравы вод и тся команд ой lpstat. Фо рм ат к о м анд ы , lpstat [ -podtsa ] Параметры : -р В ы вод состоя ни я всех при нтеров. -о В ы вод состоя ни я всех зад ани й напечать. -d В ы вод и нф ормаци и о си стемном при нтерепо умолчани ю. -1 В ы вод полной и нф ормаци и о состоя ни и всех при нтеров. -s В ы вод суммарной стати сти ки по всем при нтерам. -а В ы вод и нф ормаци и о при нтерах, которы епри ни маютзад ани я напечать. Зам ечани е — К огд азад ани енапечатьотправлено напри нтер, вы вод команд ы lpstat мож ет показатьсостоя ни е зад ани я как filtered. Ф и льтровани е означает, что зад ани енапечатьпечатается в д анны й момент. Д ля вы вод а и нф ормаци и о состоя ни я всех зад ани й на печать вы полни те след ующ ую команд у: $ lpstat -о printerA-7 printerB-1 $
user1 user2
391 551
Aug 10 16:30 Aug 10 16:45
on printerA filtered
Д ля вы вод а зад ани й на печатьд ля указанной очеред и вы полни те след ующ ую команд у: $ lpstat printerA printerA user2 551 Aug 10 16:45 $
6.3. О пред ел ени е с ост ояни я в с ех нас т роенных при нт еров Д ля опред елени я состоя ни я всех настроенны х при нтеров след ующ ую команд у: $ lpstat -t scheduler is running system default destination: printerA system for printers: host2
вы полни те
32 system for _default: host1 (as printer printerA) system for printerA: host1 printerB accepting requests since Aug 7 09:43 2000 _default accepting requests since Aug 2 08:20 2000 printer printerB is idle. enabled since Aug 7 09:43 2000. available. printer _default is idle. enabled since Aug 2 08:20 2000. available. printer printerA is idle. enabled since Aug 2 08:20 2000. available. $
Д ля опред елени я того, каки е при нтеры настроены в си стеме, вы полни те след ующ ую команд у: $ lpstat -s scheduler is running system default destination: printerA system for printers: host2 system for _default: host1 (as printer printerA) system for printerA: host1 $
6.4. Выв о д и нформ аци и опри нт ерах , при ни м ающи х зад ани я на печат ь Д ля вы вод а и нф ормаци и о при нтерах, при ни мающ и х зад ани я на печать , вы полни теслед ующ ую команд у: $ lpstat -а printerB accepting requests since Aug 7 09:43 2000 _default accepting requests since Aug 2 08:20 2000 $
6.5. Уд ал ени е зад ани й на печат ь и зо черед и К оманд а cancel позволя ет вам отменя ть зад ани я на печать, которы е бы ли отправлены на при нтер с помощ ью команд ы lр. Д ля того чтобы сд елатьэто, и спользуйте команд у lpstat д ля опред елени я request- ID, соответсвующ его нуж ному зад ани ю напечать. Фо рм ат к о м анд ы cancel Request-ID ... cancel -u им я_п о льзо ват е ля - д ля уд алени я всех зад ани й, при над леж ащ и х зад анному пользователю 6.6. О т м ена зад ани я Н апри мер, вы как пользователь user3 вы полни те след ующ ую команд у д ля опред елени я request-ID, соответствующ его нуж ному зад ани ю напечать, азатем вторую команд у д ля отмены зад ани я . $ lpstat printerB printerB-2 user2 551 printerB-6 user3 632 $ cancel printerB-6 printerB-6: cancelled $
Aug 10 16:45 Aug 10 16:47
Пользователь root мож ет отменя ть все зад ани я на печать, при над леж ащ и е любому пользователю в си стеме. Зам ечани е — О бы чны й пользовательмож ет отменя тьтолько свои зад ани я на печать. При и спользовани и д и спетчера печати CDE вы мож ете отменя ть зад ани я напечатьд ругого пользователя , но эти зад ани я буд ут всё равно ви д ны в д и спетчерепечати , д аж епослеобновлени я и х спи ска. 6.7. Ф орм ат и ров ани е и печат ь фай л а И спользуйте команд у рr д ля ф ормати ровани я и печати сод ерж и мого ф айла в соответстви и с разны ми параметрами . Э та команд а автомати чески печатает сод ерж и моеф айланаэкран терми налад ля просмотра.
33 По умолчани ю команд арr печатаетзаголовок, д о 66 строктекста, д обавля я при этом пя тьпусты х строкнастрани цу. Заголовоккаж д ой страни цы включаети мя ф айла, д ату и время его послед него и зменени я и номер страни цы . Фо рм ат к о м анд ы рr [ п арам е т ры ] им я_ф ай ла (о в ) С команд ой рr мож но и спользоватьпараметры : +page Н ачи наетпечатьсуказанного номерастрани цы . -column Печатьф айлав многоколоночном ф ормате. По умолчани ю печать прои сход и тв од ну колонку. -d Печатьф айлав ф орматесд вумя пробелами . -h заго ло во к Заменя ети мя ф айлав заголовкестрани цы наш аблон заго ло во к . -l с т ро к и У станавли вает д ли ну страни цы в строка, по умолчани ю это 66 строк. -m Сли ваетф айлы в текстовы еколонки . К олонки од и наковой ш и ри ны . Строки д анны х, которы еневлезаютв колонку, обрезаются . -l Печатаетф айлы без заголовка. -n В ы вод и тномер каж д ой строки . В след ующ и х при мерах сод ерж и мое ф айла печатается на экран терми нала с и спользовани ем разли чны х параметров ф орматакоманд ы рr. • Н ачат ь форм ат и ров ани е фай л а с ос т рани цы 4: $ рr +4 tutor.vi | more Mar 1 14:58 2000 tutor.vi Page 4 1. Press <ESC> to make sure you are in Command Mode. 2. Move the cursor to the line below marked --->. 3. Move the cursor to the end of the correct line (AFTER the first . ). 4. Type d$ to delete to the end of the line.