Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

5 семестр / ПОС / ЛабРаб / 1 Практическое занятие

.html
Скачиваний:
45
Добавлен:
28.03.2015
Размер:
40.72 Кб
Скачать

рТБЛФЙЮЕУЛПЕ ЪБОСФЙЕ. тБВПФБ У ЖБКМБНЙ Ч UNIX рТБЛФЙЮЕУЛПЕ ЪБОСФЙЕ. тБВПФБ У ЖБКМБНЙ Ч UNIX гЕМШ ЪБОСФЙС: ЪОБЛПНУФЧП У ЛПНБОДОПК УФТПЛПК UNIX, ЛПНБОДБНЙ РП ТБВПФЕ У ЖБКМПЧПК УЙУФЕНПК Й ЛПНБОДБНЙ ПВТБВПФЛЙ ФЕЛУФПЧЩИ ЖБКМПЧ.

уГЕОБТЙК: ъОБЛПНУФЧП У ЛБФБМПЗБНЙ UNIX

ч ЬФПН УГЕОБТЙЙ ВХДЕФ ПУЧЕЭЕОП ЪОБЛПНУФЧП У ЛПНБОДБНЙ UNIX, ЙЪХЮЕОЙЕ ЖБКМПЧПК УЙУФЕНЩ Й ВБЪПЧЩИ ЛБФБМПЗПЧ, УПЪДБОЙЕ ТБВПЮЕК УТЕДЩ Ч ДПНБЫОЕН ЛБФБМПЗЕ РПМШЪПЧБФЕМС ДМС ЧЩРПМОЕОЙС ЧУЕИ РПУМЕДХАЭЙИ ЛПНБОД.

оБЮБМШОЩЕ ХУМПЧЙС: лПНБОДОБС УФТПЛБ РПУМЕ ЧИПДБ Ч УЙУФЕНХ.

рПМХЮЙФШ ЙНС ФЕЛХЭЕЗП ЛБФБМПЗБ У РПНПЭША ЛПНБОДЩ pwd:

user@desktop ~ $ pwd /home/user/

рЕТЕКФЙ Ч ЛПТОЕЧПК ЛБФБМПЗ У РПНПЭША ЛПНБОДЩ cd /:

user@desktop ~ $ cd / user@desktop / $ pwd / пФНЕФЙФШ, ЛБЛ ЙЪНЕОЙМПУШ УФТПЛБ РТЙЗМБЫЕОЙС.

рПУНПФТЕФШ УПДЕТЦЙНПЕ ЛПТОЕЧПЗП ЛБФБМПЗБ У РПНПЭША ЛПНБОДЩ ls:

user@desktop / $ ls bin dev home mnt proc sbin tmp var boot etc lib opt root sys usr

уТБЧОЙФШ У ЙУРПМШЪПЧБОЙЕН «ТБУЛБТБЫЕООПЗП» ЧЩЧПДБ ЛПНБОДЩ ls -F --color:

user@desktop / $ ls -F --color bin/ dev/ home/ mnt/ proc/ sbin/ tmp/ var/ boot/ etc/ lib/ opt/ root/ sys/ usr/ дЙТЕФПТЙЙ ПФНЕЮБАФУС УЙОЙН ГЧЕФПН Й ЪОБЛПН «/» РПУМЕ ЙНЕОЙ.

рПУНПФТЕФШ УПДЕТЦЙНПЕ ДПНБЫОЕЗП ЛБФБМПЗБ У РПНПЭША ЛПНБОДЩ ls -F --color ~:

user@desktop / $ ls -F --color ~ user@desktop / $ чПЪНПЦОП, ДПНБЫОЙК ЛБФБМПЗ РХУФ.

чЕТОХФШУС Ч ДПНБЫОЙК ЛБФБМПЗ У РПНПЭША cd ВЕЪ РБТБНЕФТПЧ:

user@desktop / $ cd user@desktop ~ $

уПЪДБФШ ДЙТЕЛФПТЙА test У РПНПЭША ЛПНБОДЩ mkdir test:

user@desktop ~ $ mkdir test

рПУНПФТЕФШ ПВОПЧМЈООПЕ УПДЕТЦЙНПЕ ДПНБЫОЕЗП ЛБФБМПЗБ ls -F --color:

user@desktop ~ $ ls -F --color test/

уПЪДБФШ РПДДЙТЕЛФПТЙА subtest Ч ДЙТЕЛФПТЙЙ test ЛПНБОДПК mkdir test/subtest:

user@desktop ~ $ mkdir test/subtest

рПУНПФТЕФШ УПДЕТЦЙНПЕ ДПНБЫОЕЗП ЛБФБМПЗБ Й ЕЗП РПДЛБФБМПЗПЧ У РПНПЭША ЛМАЮБ ТЕЛХТУЙЧОПЗП РТПУНПФТБ -R Ч ЛПНБОДЕ ls -F --color -R:

user@desktop ~ $ ls -F --color -R .: test/ test: subtest/ test/subtest:

уГЕОБТЙК: йЪХЮЕОЙЕ ФЙРПЧ ЖБКМПЧ Ч UNIX

ч ЬФПН УГЕОБТЙЙ ТБУУНБФТЙЧБАФУС ФЙРЩ ЖБКМПЧ Ч UNIX: РТПУФЩЕ ЖБКМЩ, ДЙТЕЛФПТЙЙ, УУЩМЛЙ. йЪХЮБАФУС ЛПНБОДЩ УПЪДБОЙС Й ЛПРЙТПЧБОЙС ЖБКМПЧ. рПЛБЪЩЧБЕФУС ТБЪОЙГБ НЕЦДХ ЦЕУФЛЙНЙ Й УЙНЧПМЙЮЕУЛЙНЙ УУЩМЛБНЙ, НЕЦДХ ЛПРЙТПЧБОЙЕН Й РЕТЕОПУПН ЖБКМБ.

оБЮБМШОЩЕ ХУМПЧЙС: лПНБОДОБС УФТПЛБ. дЙТЕЛФПТЙС test РПУМЕ РТЕДЩДХЭЕЗП УГЕОБТЙС.

CПЪДБФШ РХУФПК ЖБКМ У РПНПЭША ЛПНБОДЩ touch test/first.txt:

user@desktop ~ $ touch test/first.txt user@desktop ~ $ ls -F --color test/ first.txt subtest/

дПВБЧЙФШ УФТПЛХ ФЕЛУФБ Ч ЛПОЕГ ЖБКМБ У РПНПЭША ЛПНБОДЩ echo "Hello, world" >> test/first.txt Й РЕТЕОБРТБЧМЕОЙС ЧЩЧПДБ:

user@desktop ~ $ echo "Hello, world" >> test/first.txt

рПУНПФТЕФШ УПДЕТЦЙНПЕ ЖБКМБ У РПНПЭША ЛПНБОДЩ cat test/first.txt:

user@desktop ~ $ cat test/first.txt Hello, world user@desktop ~ $

рПУНПФТЕФШ ТБУЫЙТЕООХА ЙОЖПТНБГЙА П ЛБФБМПЗЕ, ЙУРПМШЪХС ЛМАЮ -l ЛПНБОДЩ ls. ls -F --color -l test:

user@desktop ~ $ ls -F --color -l test ЙФПЗП 4 -rw-r--r-- 1 user users 13 пЛФ 15 20:48 first.txt drwxr-xr-x 2 user users 48 пЛФ 13 21:33 subtest/

дПВБЧЙФШ РУЕЧДПОЙН ЛПНБОДОПК ПВПМПЮЛЙ, ЮФПВЩ УПЛТБФЙФШ ТБЪНЕТ ЛПНБОДЩ, У РПНПЭША ЛПНБОДЩ alias ls='ls -F --color -l':

user@desktop ~ $ alias ls='ls -F --color -l' user@desktop ~ $ ls test ЙФПЗП 4 -rw-r--r-- 1 user users 13 пЛФ 15 20:48 first.txt drwxr-xr-x 2 user users 48 пЛФ 13 21:33 subtest/

рПУНПФТЕФШ ЗМХВЦЕ ОБ ДЙТЕЛФПТЙА test, ЙУРПМШЪХС ЛМАЮЙ -a Й -i. ls -a -i test

user@desktop ~ $ ls -a -i test ЙФПЗП 7 drwxr-xr-x 3 user users 104 пЛФ 15 20:49 ./ drwx------ 67 user users 3352 пЛФ 15 20:42 ../ -rw-r--r-- 1 user users 13 пЛФ 15 20:48 first.txt drwxr-xr-x 2 user users 48 пЛФ 13 21:33 subtest/ рЕТЧЩК УФПМВЕГ – ОПНЕТБ ЙОДЕЛУОЩИ ХЪМПЧ ЖБКМПЧПК УЙУФЕНЩ. фТЕФЙК УФПМВЕГ – ЮЙУМП ЦЈУФЛЙИ УУЩМПЛ ЖБКМБ.

рЕТЕКФЙ Ч ЛБФБМПЗ test У РПНПЭША ЛПНБОДЩ cd test

user@desktop ~ $ cd test

уЛПРЙТПЧБФШ ЖБКМ У РПНПЭША ЛПНБОДЩ cp first.txt copy1.txt:

user@desktop test $ cp first.txt copy1.txt user@desktop test $ ls -a -i ЙФПЗП 11 5522107 drwxr-xr-x 3 user users 136 пЛФ 15 20:54 ./ 384269 drwx------ 67 user users 3352 пЛФ 15 20:42 ../ 5938127 -rw-r--r-- 1 user users 13 пЛФ 15 20:54 copy1.txt 5937954 -rw-r--r-- 1 user users 13 пЛФ 15 20:48 first.txt 6292625 drwxr-xr-x 2 user users 48 пЛФ 13 21:33 subtest/ оПЧЩК ЖБКМ ЙНЕЕФ УЧПК УПВУФЧЕООЩК ЙОДЕЛУОЩК ХЪЕМ.

рЕТЕЙНЕОПЧБФШ ЖБКМ У РПНПЭША ЛПНБОДЩ mv first.txt orig.txt. mv first.txt orig.txt:

user@desktop test $ mv first.txt orig.txt user@desktop test $ ls -a -i ЙФПЗП 11 5522107 drwxr-xr-x 3 user users 128 пЛФ 15 20:59 ./ 384269 drwx------ 67 user users 3352 пЛФ 15 20:42 ../ 5938127 -rw-r--r-- 1 user users 13 пЛФ 15 20:54 copy1.txt 5937954 -rw-r--r-- 1 user users 13 пЛФ 15 20:48 orig.txt 6292625 drwxr-xr-x 2 user users 48 пЛФ 13 21:33 subtest/ пФНЕФЙН, ЮФП ЙЪНЕОЙМПУШ ФПМШЛП ЙНС ЖБКМБ, ЧУЕ ПУФБМШОЩЕ БФТЙВХФЩ ПУФБМЙУШ РТЕЦОЙНЙ.

уПЪДБФШ ЦЈУФЛХА УУЩМЛХ ЛПНБОДПК ln orig.txt copy2.txt:

user@desktop test $ ln orig.txt copy2.txt user@desktop test $ ls -a -i ЙФПЗП 15 5522107 drwxr-xr-x 3 user users 160 пЛФ 15 21:00 ./ 384269 drwx------ 67 user users 3352 пЛФ 15 20:42 ../ 5938127 -rw-r--r-- 1 user users 13 пЛФ 15 20:54 copy1.txt 5937954 -rw-r--r-- 2 user users 13 пЛФ 15 20:48 copy2.txt 5937954 -rw-r--r-- 2 user users 13 пЛФ 15 20:48 orig.txt 6292625 drwxr-xr-x 2 user users 48 пЛФ 13 21:33 subtest/ дПВБЧЙМБУШ ЕЭЈ ПДОБ УУЩМЛБ ОБ ФПФ ЦЕ ЖБКМ, ЮЙУМП УУЩМПЛ ХЧЕМЙЮЙМПУШ ОБ 1.

уПЪДБФШ УЙНЧПМЙЮЕУЛХА УУЩМЛХ ЛПНБОДПК ln -s orig.txt orig.lnk:

user@desktop test $ ln -s orig.txt orig.lnk user@desktop test $ ls -a -i ЙФПЗП 15 5522107 drwxr-xr-x 3 user users 184 пЛФ 15 21:18 ./ 384269 drwx------ 67 user users 3352 пЛФ 15 21:02 ../ 5938127 -rw-r--r-- 1 user users 13 пЛФ 15 20:54 copy1.txt 5937954 -rw-r--r-- 2 user users 13 пЛФ 15 20:48 copy2.txt 5938189 lrwxrwxrwx 1 user users 8 пЛФ 15 21:18 orig.lnk -> orig.txt 5937954 -rw-r--r-- 2 user users 13 пЛФ 15 20:48 orig.txt 6292625 drwxr-xr-x 2 user users 48 пЛФ 13 21:33 subtest/ оПЧЩК ЖБКМ ЙНЕЕФ ОПЧЩК ЙОДЕЛУОЩК ХЪЕМ Й ТБЪНЕТ, ТБЧОЩК ЙНЕОЙ ЖБКМБ orig.txt.

уТБЧОЙН УПДЕТЦЙНПЕ ЖБКМПЧ РТЙ ПВТБЭЕОЙЙ Л ОЙН РП ЙНЕОЙ:

user@desktop test $ cat orig.txt Hello, world user@desktop test $ cat copy2.txt Hello, world user@desktop test $ cat orig.lnk Hello, world

л ПДОЙН Й ФЕН ЦЕ ДБООЩН НПЦОП ПВТБФЙФШУС ЮЕТЕЪ ЦЕУФЛХА ЙМЙ УЙНЧПМЙЮЕУЛХА УУЩМЛХ.

уГЕОБТЙК: рПЙУЛ УЙУФЕНОЩИ ЦХТОБМПЧ

ч ЬФПН УГЕОБТЙЙ ЙЪХЮБЕФУС ЛПНБОДБ РПЙУЛБ ЖБКМПЧ Й ДЙТЕЛФПТЙК.

оБЮБМШОЩЕ ХУМПЧЙС: лПНБОДОБС УФТПЛБ, ДЙТЕЛФПТЙС test РПУМЕ РТПЫМПЗП УГЕОБТЙС.

рЕТЕКФЙ Ч ЛБФБМПЗ test У РПНПЭША ЛПНБОДЩ cd test:

user@desktop ~ $ cd test

чЩЧЕУФЙ УРЙУПЛ ЧУЕИ ЖБКМПЧ Й ДЙТЕЛФПТЙК Ч ФЕЛХЭЕК ДЙТЕЛФПТЙЙ, ЧЛМАЮБС УПДЕТЦЙНПЕ РПДДЙТЕЛФПТЙК У РПНПЭША ЛПНБОДЩ find:

user@desktop ~ $ find . ./orig.lnk ./orig.txt ./subtest ./copy1.txt ./copy2.txt

оБКФЙ ЧУЕ ЖБКМЩ Й ДЕТЙЛФПТЙЙ Ч ФЕЛХЭЕК ДЙТЕЛФПТЙЙ Й ЕЕ РПДДЙТЕЛФПТЙСИ, ЛПФПТЩЕ ОБЮЙОСАФУС ОБ «o» У РПНПЭША ЛПНБОДЩ find -name "o*":

user@desktop ~ $ find -name "o*" ./orig.lnk ./orig.txt

оБКФЙ ЧУЕ ЖБКМЩ Й ДЕТЙЛФПТЙЙ Ч ДЙТЕЛФПТЙЙ /etc Й ЕЕ РПДДЙТЕЛФПТЙСИ, ЛПФПТЩЕ ОБЮЙОСАФУС ОБ «o» У РПНПЭША ЛПНБОДЩ find /etc -name "o*":

user@desktop ~ $ find /etc -name "o*" /etc/apm/other.d /etc/joe/syntax/ocaml.jsf /etc/opt /etc/ppp/options-pptp /etc/ppp/options-pppoe /etc/ppp/options /etc/ssl/openssl.cnf /etc/dpkg/origins /etc/pam.d/other /etc/texmf/tex/plain/config/omega.ini

оБКФЙ ЧУЕ ПВЩЮОЩЕ ЖБКМЩ Ч ДЙТЕЛФПТЙЙ /etc Й ЕЕ РПДДЙТЕЛФПТЙСИ, ЛПФПТЩЕ ОБЮЙОБАФУС ОБ «o» У РПНПЭША ЛПНБОДЩ find /etc -name "o*" -a -type f:

user@desktop ~ $ find /etc -name "o*" -a -type f /etc/joe/syntax/ocaml.jsf /etc/ppp/options-pptp /etc/ppp/options-pppoe /etc/ppp/options /etc/ssl/openssl.cnf /etc/pam.d/other /etc/texmf/tex/plain/config/omega.ini

оБКФЙ ЧУЕ ПВЩЮОЩЕ ЖБКМЩ Ч ДЙТЕЛФПТЙЙ /var/ Й ЕЕ РПДДЙТЕЛФПТЙСИ, ЪБЛБОЮЙЧБАЭЙЕУС ОБ «log»:

user@desktop ~ $ find /var -name "*log" -a -type f find: /var/lib/mysql: Permission denied find: /var/lib/samba/private: Permission denied ... /var/log/emerge.log /var/log/lastlog /var/log/faillog /var/log/Xorg.0.log уРЙУПЛ ОБКДЕООЩИ ЖБКМПЧ НПЦЕФ ВЩФШ УМЙЫЛПН ВПМШЫЙН Й ДМС ЕЗП РТПУНПФТБ НПЦОП ЧПУРПМШЪПЧБФШУС «РТПЛТХФЛПК» ФЕТНЙОБМБ У РПНПЭША ЛМБЧЙЫ Shift-PgUp Й Shift-PgDn

йУЛМАЮЙФШ ЧЩЧПД УППВЭЕОЙК ПВ ПЫЙВЛБИ (ОБРТЙНЕТ, «Permission denied») У РПНПЭША РЕТЕОБРТБЧМЕОЙС ЧЩЧПДБ ПЫЙВПЛ Ч УРЕГЙБМШОПЕ ХУФТПКУФЧП /dev/null. дМС ЬФПЗП ЧЧЕУФЙ ЛПНБОДХ find /var -name "*log" -a -type f 2>/dev/null

user@desktop ~ $ find /var -name "*log" -a -type f 2>/dev/null /var/log/emerge.log /var/log/lastlog /var/log/faillog /var/log/Xorg.0.log

уПЪДБФШ ДЙТЕЛФПТЙА logs У РПНПЭША ЛПНБОДЩ mkdir test/logs:

user@desktop ~ $ mkdir test/logs

уЛПРЙТПЧБФШ ОБКДЕООЩЕ ЖБКМЩ Ч МПЛБМШОХА ДЙТЕЛФПТЙА У РПНПЭША РБТБНЕФТБ -exec ЛПНБОДЩ find. дМС ЬФПЗП ЧЧЕУФЙ ЛПНБОДХ find /var -name "*log" -a -type f -exec cp {} test/logs/ 2>/dev/null:

user@desktop ~ $ find /var -name "*log" -a -type f -exec cp {} test/logs/ 2>/dev/null user@desktop ~ $ ls test/logs ЙФПЗП 789 -rw-r----- 1 user users 601033 пЛФ 16 18:37 emerge.log -rw-r--r-- 1 user users 292292 пЛФ 16 18:37 lastlog -rw-r--r-- 1 user users 37383 пЛФ 16 18:37 Xorg.0.log вЩМЙ УЛПРЙТПЧБОЩ ЧУЕ ЖБКМЩ, РТБЧБ ОБ ЮФЕОЙЕ ЛПФПТЩИ Х ОБУ ЕУФШ.

уГЕОБТЙК: бТИЙЧЙТПЧБОЙЕ Й ДЕБТИЙЧЙТПЧБОЙЕ ЖБКМПЧ Й ДЙТЕЛФПТЙК

ч ЬФПН УГЕОБТЙЙ ЙЪХЮБЕФУС ЛПНБОДБ БТИЙЧЙТПЧБОЙС ЖБКМПЧ Й ДЙТЕЛФПТЙК.

оБЮБМШОЩЕ ХУМПЧЙС: лПНБОДОБС УФТПЛБ, ДЙТЕЛФПТЙС test РПУМЕ РТПЫМПЗП УГЕОБТЙС.

рЕТЕКФЙ Ч ДПНБЫОАА ДЙТЕЛФПТЙА У РПНПЭША ЛПНБОДЩ cd:

user@desktop test $ cd user@desktop ~ $

уПЪДБФШ БТИЙЧ У ЙНЕОЕН test.tar.gz У РТЙНЕОЕОЙЕН УЦБФЙС, УПДЕТЦБЭЙК ДЙТЕЛФПТЙА test У РПНПЭША ЛПНБОДЩ tar -czf test.tar.gz test:

user@desktop ~ $ tar -czf test.tar.gz test user@desktop ~ $ ls drwxr-xr-x 4 user users 208 пЛФ 16 18:36 test/ -rw-r--r-- 1 user users 79173 пЛФ 16 18:49 test.tar.gz

уПЪДБФШ ОПЧХА ДЙТЕЛФПТЙА ДМС УПДЕТЦЙНПЗП БТИЙЧБ ЛПНБОДПК mkdir test2:

user@desktop ~ $ mkdir test2

рЕТЕКФЙ Ч ОПЧХА ДЙТЕЛФПТЙА У РПНПЭША ЛПНБОДЩ cd test2:

user@desktop ~ $ cd test2

тБЪЧЕТОХФШ УПДЕТЦЙНПЕ БТИЙЧБ Ч ФЕЛХЭХА ДЙТЕЛФПТЙА У РПНПЭША ЛПНБОДЩ tar -xzf ../test.tar.gz:

user@desktop test2 $ tar -xzf ../test.tar.gz

хВЕДЙФШУС, ЮФП УПДЕТЦЙНПЕ ТБУРБЛПЧБООПЗП БТИЙЧБ УПЧРБДБЕФ У ПТЙЗЙОБМШОПК ДЙТЕЛФПТЙЕК. чЧЕУФЙ ЛПНБОДХ ls -l -F:

user@desktop test2 $ ls -l -F ЙФПЗП 0 drwxr-xr-x 4 user users 208 пЛФ 16 18:36 test/ user@desktop test2 $ ls -l -F test ЙФПЗП 12 -rw-r--r-- 1 user users 13 пЛФ 15 20:54 copy1.txt -rw-r--r-- 2 user users 13 пЛФ 15 20:48 copy2.txt drwxr-xr-x 2 user users 136 пЛФ 16 18:37 logs/ lrwxrwxrwx 1 user users 8 пЛФ 16 18:54 orig.lnk -> orig.txt -rw-r--r-- 2 user users 13 пЛФ 15 20:48 orig.txt drwxr-xr-x 2 user users 48 пЛФ 13 21:33 subtest/

уГЕОБТЙК: CПЪДБОЙЕ ОПЧЩИ ФЕЛУФПЧЩИ ЖБКМПЧ

ч ЬФПН УГЕОБТЙЙ ЙЪХЮБАФУС ЛПНБОДЩ ДМС УПЪДБОЙС Й НПДЙЖЙГЙТПЧБОЙС ФЕЛУФПЧЩИ ЖБКМПЧ.

оБЮБМШОЩЕ ХУМПЧЙС: лПНБОДОБС УФТПЛБ.

чЧЕУФЙ ЛПНБОДХ echo "One line":

user@desktop test $ echo "One line" One line дБООБС ЛПНБОДБ РТЙОЙНБЕФ УФТПЛХ Ч ЧЙДЕ БТЗХНЕОФБ Й ЧЩЧПДЙФ ЕЈ ОБ УФБОДБТФОЩК ЧЩЧПД.

чЧЕУФЙ ФХ ЦЕ ЛПНБОДХ, ОП РЕТЕОБРТБЧЙФШ ЧЩЧПД Ч ЖБКМ second.txt У РПНПЭША «>». чЧЕУФЙ ЛПНБОДХ echo "One line" > second.txt:

user@desktop test $ echo "One line" > second.txt

дПВБЧЙФШ Ч ЛПОЕГ ЖБКМБ second.txt УФТПЛХ «A line» У РПНПЭША ДТХЗПЗП РЕТЕОБРТБЧМЕОЙС echo "A line" >> second.txt:

user@desktop test $ echo "A line" >> second.txt

чЩЧЕУФЙ УПДЕТЦЙНПЕ ЖБКМБ У РПНПЭША ЛПНБОДЩ cat second.txt:

user@desktop test $ cat second.txt One line A line

у РПНПЭША ЛПНБОДЩ cat НПЦОП УПЪДБЧБФШ НОПЗПУФТПЮОЩЕ ЖБКМЩ –, ЕУМЙ РЕТЕПРТЕДЕМЙФШ ЧЩЧПД РТПЗТБННЩ Ч ЖБКМ Й ЧЧПДЙФШ ФЕЛУФ ДП ОБЦБФЙС Ctrl-D (ЛПОЕГ ЧЧПДБ). чЧЕУФЙ ЛПНБОДХ cat >multiline.txt Й ОБВТБФШ ФЕЛУФ

user@desktop test $ cat >multiline.txt Simple text: blah-blah-blah 1 2 3 4 5 6 7 8 9 0 bye! (Ctrl+D) user@desktop test $

хВЕДЙФШУС, ЮФП УПДЕТЦЙНПЕ ЖБКМБ УПЧРБДБЕФ У ЧЧЕДЈООЩН ФЕЛУФПН, ЧЛМАЮБС ЧУЕ РЕТЕЧПДЩ УФТПЛЙ. дМС ЬФПЗП ЧЧЕУФЙ ЛПНБОДХ cat multiline.txt

user@desktop test $ cat multiline.txt Simple text: blah-blah-blah 1 2 3 4 5 6 7 8 9 0 bye!

пУОПЧОЩН ОБЪОБЮЕОЙЕН ЛПНБОДЩ cat СЧМСЕФУС ПВЯЕДЙОЕОЙЕ ЖБКМПЧ, ЙНЕОБ ЛПФПТЩИ РЕТЕДБАФУС ЛБЛ БТЗХНЕОФЩ ЛПНБОДОПК УФТПЛЙ. пВЯЕДЙОЙФШ ЖБКМЩ У РПНПЭША ЛПНБОДЩ cat orig.txt second.txt multiline.txt > big.txt:

user@desktop test $ cat orig.txt second.txt multiline.txt > big.txt

хВЕДЙФШУС, ЮФП ОПЧЩК ЖБКМ УПДЕТЦЙФ УФТПЛЙ ЙЪ РЕТЕЮЙУМЕООЩИ ЖБКМПЧ У РПНПЭША ЛПНБОДЩ cat big.txt:

user@desktop test $ cat big.txt Hello, world One line A line Simple text: blah-blah-blah 1 2 3 4 5 6 7 8 9 0 bye!

уГЕОБТЙК: тБЪТЕЪБОЙЕ Й УЛМЕЙЧБОЙЕ ЖБКМПЧ

ч ДБООПН УГЕОБТЙЙ ЙЪХЮБЕФУС, ЛБЛ ЧЩДЕМСФШ ЙОЖПТНБГЙА, ТБЪВЙФХА ОБ ЮБУФЙ У РПНПЭША УРЕГЙБМШОПЗП УЙНЧПМБ-ТБЪДЕМЙФЕМС (ОБРТЙНЕТ, РТППВЕМБ ЙМЙ УЙНЧПМБ «:»), ЙЪ ЖБКМПЧ Й УПЪДБЧБФШ ОПЧЩЕ УФТХЛФХТЙТПЧБООЩЕ ЖБКМЩ.

оБЮБМШОЩЕ ХУМПЧЙС: лПНБОДОБС УФТПЛБ.

рПУНПФТЕФШ УПДЕТЦЙНПЕ ЖБКМБ /etc/passwd, Ч ЛПФПТПН УПДЕТЦЙФУС ЙОЖПТНБГЙС П РПМШЪПЧБФЕМСИ УЙУФЕНЩ, У РПНПЭША ЛПНБОДЩ cat /etc/passwd:

user@desktop test $ cat /etc/passwd root:x:0:0:root:/root:/bin/bash bin:x:1:1:bin:/bin:/bin/false daemon:x:2:2:daemon:/sbin:/bin/false adm:x:3:4:adm:/var/adm:/bin/false lp:x:4:7:lp:/var/spool/lpd:/bin/false sync:x:5:0:sync:/sbin:/bin/sync shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown ... лБЦДБС УФТПЛБ ИТБОЙФ ЪБРЙУШ ПВ ПФДЕМШОПН РПМШЪПЧБФЕМЕ. ъБРЙУШ УПУФПЙФ ЙЪ РПМЕК, ТБЪДЕМЈООЩИ УЙНЧПМПН «:».

чЩДЕМЙФШ РЕТЧЩК УФПМВЕГ Ч ЛБЦДПК ЪБРЙУЙ, ХУФБОПЧЙЧ ТБЪДЕМЙФЕМШ Ч «:», У РПФПЭША ЛПНБОДЩ cat /etc/passwd | cut -f1 -d::

user@desktop test $ cat /etc/passwd | cut -f1 -d: root bin daemon adm lp sync shutdown ...

пФУПТФЙТПЧБФШ УРЙУПЛ РПМШЪПЧБФЕМЕК РП БМЖБЧЙФХ У РПНПЭША ЛПНБОДЩ cat /etc/passwd | cut -f1 -d: | sort:

user@desktop test $ cat /etc/passwd | cut -f1 -d: | sort adm alias apache at bin cron cyrus ...

чЩДЕМЙФШ УЕДШНПК УФПМВЕГ Ч ЛБЦДПК ЪБРЙУЙ, УППФЧЕФУФЧХАЭЙК ЛПНБОДОПК ПВПМПЮЛЕ РПМШЪПЧБФЕМС, У РПНПЭША ЛПНБОДЩ cat /etc/passwd | cut -f7 -d:

user@desktop test $ cat /etc/passwd | cut -f7 -d: /bin/bash /bin/false /bin/false /bin/false /bin/false /bin/sync ... уРЙУПЛ УПДЕТЦЙФ НОПЗП РПЧФПТСАЭЙИУС УФТПЛ.

хДБМЙФШ РПЧФПТСАЭЙЕУС УФТПЛЙ ЛПНБОДПК cat /etc/passwd | cut -f7 -d: | uniq:

user@desktop test $ cat /etc/passwd | cut -f7 -d: | uniq /bin/bash /bin/false /bin/sync /sbin/shutdown /sbin/halt /bin/false ... оЕЛПФПТЩЕ РПЧФПТСАЭЙЕУС УФТПЛЙ ПУФБМЙУШ, ФБЛ ЛБЛ УТБЧОЙЧБАФУС ФПМШЛП РПУМЕДПЧБФЕМШОЩЕ УФТПЛЙ.

дПВЙФШУС РПМОПК ХОЙЛБМШОПУФЙ, РТЕДЧБТЙФЕМШОП ПФУПТФЙТПЧБЧ УФТПЛЙ У РПНПЭША ЛПНБОДЩ sort. чЧЕУФЙ ЛПНБОДХ cat /etc/passwd | cut -f7 -d: | sort | uniq:

user@desktop test $ cat /etc/passwd | cut -f7 -d: | sort | uniq /bin/bash /bin/false /bin/sync /dev/null /sbin/halt /sbin/shutdown

чЩДЕМЙФШ РЕТЧЩК Й УЕДШНПК УФПМВЕГ ЖБКМБ /etc/passwd Ч ПФДЕМШОЩЕ ЖБКМЩ. дМС ЬФПЗП ЧЧЕУФЙ ЛПНБОДЩ cat /etc/passwd | cut -f1 -d: > users Й cat /etc/passwd | cut -f7 -d: > shells:

user@desktop test $ cat /etc/passwd | cut -f1 -d: > users user@desktop test $ cat /etc/passwd | cut -f7 -d: > shells

пВЯЕДЙОЙФШ ТЕЪХМШФБФЩ У РПНПЭША ЛПНБОДЩ paste users shells:

user@desktop test $ paste users shells root /bin/bash bin /bin/false daemon /bin/false adm /bin/false lp /bin/false sync /bin/sync ...

уГЕОБТЙК: вЩУФТЩК БОБМЙЪ ФЕЛУФПЧ

ч ДБООПН УГЕОБТЙЙ ЙЪХЮБАФУС ЛПНБОДЩ, ЛПФПТЩЕ РПЪЧПМСАФ РТПЧЕУФЙ РЕТЧЙЮОЩК БОБМЙЪ ЖБКМБ: У ЮЕЗП ПО ОБЮЙОБЕФУС, ЛБЛ ЪБЛБОЮЙЧБЕФУС Й ЛБЛПЧ ЕЗП ТБЪНЕТ.

оБЮБМШОЩЕ ХУМПЧЙС: лПНБОДОБС УФТПЛБ.

рПМХЮЙФШ ЮЙУМП УФТПЛ Ч ЖБКМЕ /etc/passwd У РМПНПЭША ЛПНБОДЩ wc -l /etc/passwd :

user@desktop test $ wc -l /etc/passwd 44 /etc/passwd

йМЙ ДТХЗЙН УРПУПВПН: РПУЮЙФБЧ ЮЙУМП УМПЧ Ч УПЪДБООПН ТБОЕЕ ЖБКМЕ users У РПНПЭША ЛПНБОДЩ cat users | wc -w:

user@desktop test $ cat users | wc -w 44

рПУНПФЕФШ РЕТЧЩЕ ОЕУЛПМШЛП УФТПЛ ДМЙООПЗП ЖБКМБ У РПНПЭША ЛПНБОДЩ head logs/Xorg.0.log:

user@desktop test $ head logs/Xorg.0.log X Window System Version 6.8.2 Release Date: 9 February 2005 X Protocol Version 11, Revision 0, Release 6.8.2 Build Operating System: Linux 2.6.13-gentoo i686 [ELF] Current Operating System: Linux thinkpad 2.6.13-gentoo #1 Wed Sep 7 01:03:14 MSD 2005 i686 Build Date: 08 October 2005 Before reporting problems, check http://wiki.X.Org to make sure that you have the latest version. Module Loader present

бОБМПЗЙЮОП, РПУНПФЕФШ РПУМЕДОЙЕ ОЕУЛПМШЛП УФТПЛ У РПНПЭША ЛПНБОДЩ tail logs/Xorg.0.log:

user@desktop test $ tail logs/Xorg.0.log (II) RADEON(0): [RESUME] Attempting to re-init Radeon hardware. (II) RADEON(0): [agp] Mode 0x1f000201 [AGP 0x8086/0x3340; Card 0x1002/0x4c66] (II) Mouse1: ps2EnableDataReporting: succeeded SetClientVersion: 0 8 SetGrabKeysState - disabled SetGrabKeysState - enabled (II) 3rd Button detected: disabling emulate3Button SetClientVersion: 0 8 SetGrabKeysState - disabled SetGrabKeysState - enabled ьФП ВЩЧБЕФ РПМЕЪОП РТЙ РТПУНПФТЕ УЙУФЕНОЩИ ЦХТОБМПЧ – Ч ОЙИ УБНЩЕ РПУМЕДОЙЕ УПВЩФЙС УПДЕТЦБФУС Ч ЛПОГЕ ЖБКМПЧ.

уГЕОБТЙК: рПЙУЛ УФТПЛ РП ТЕЗХМСТОЩН ЧЩТБЦЕОЙСН

ч ДБООПН УГЕОБТЙЙ ТБУУНБФТЙЧБЕФУС РТБЛФЙЮЕУЛПЕ ЙУРПМШЪПЧБОЙЕ ТЕЗХМСТОЩИ ЧЩТБЦЕОЙК ДМС РПЙУЛБ РП ФЕЛУФПЧЩН ЖБКМБН.

оБЮБМШОЩЕ ХУМПЧЙС: лПНБОДОБС УФТПЛБ. дЙТЕЛФПТЙС test/log У ОБКДЕООЩНЙ УЙУФЕНОЩНЙ ЦХТОБМБНЙ.

уТЕДЙ ОБКДЕООЩИ УЙУФЕНОЩИ ЦХТОБМПЧ РПУНПФТЕФШ ЖБКМ ЦХТОБМБ ЪБЗТХЪЛЙ ЗТБЖЙЮУЛПК УЙУФЕНЩ XFree86.0.log У РПНПЭША ЛПНБОДЩ less test/log/XFree86.0.log:

user@desktop ~ $ less test/log/XFree86.0.log чЩКФЙ ЙЪ РТПУНПФПТЭЙЛБ НПЦОП ОБЦБФЙЕН ЛМБЧЙЫЙ q.

оБКФЙ ЧУЕ РТЕДХРТЕЦДЕОЙС Ч ЦХТОБМЕ: УФТПЛБ, ОБЮЙОБАЭБСУС У «(WW)». дМС ЬФПЗП ЧЧЕУФЙ ЛПНБОДХ grep "^(WW)" test/log/XFree86.0.log:

user@desktop ~ $ grep "^(WW)" test/log/XFree86.0.log (WW) The directory "/usr/share/fonts/freefonts/" does not exist. (WW) The directory "/usr/share/fonts/unifont/" does not exist. (WW) The directory "/usr/share/fonts/artwiz/" does not exist. ...

рПМХЮЙФШ ЧУЕ УФТПЛЙ, УПДЕТЦБЭЙЕ УМЕДХАЭЙК ЫБВМПО: РПУМЕДПЧБФЕМШОПУФШ ЙЪ 1 ЙМЙ ВПМЕЕ ГЙЖТЩ ЙМЙ ВХЛЧЩ, ЪБФЕН УЙНЧПМ УПВБЛЙ, ЪБФЕН ЕЭЕ ПДОБ РПУМЕДПЧБФЕМШОПУФШ 1 ЙМЙ ВПМЕЕ ГЙЖТЩ ЙМЙ ВХЛЧЩ ЙМЙ ФПЮЛЙ, ЪБФЕН УЙНЧПМ ФПЮЛЙ, ЪБФЕН ПФ ДЧХИ ДП ЮЕФЩТЈИ ВХЛЧ (ЙНС ДПНЕОБ РЕТЧПЗП ХТПЧОС). фБЛЦЕ УМХЦЕВОЩК ЧЩЧПД ПЫЙВПЛ ХДБМСЕФУС (РЕТЕОБРТБЧМСЕФУС Ч ОХМЕЧПЕ ХУФТПКУФЧП). дМС ЬФПЗП ЧЧЕУФЙ ЛПНБОДХ grep "[a-zA-z0-9]\+@[a-zA-z0-9\.]\+\.[a-z]\{2,4\}" /etc/* 2>/dev/null:

user@desktop ~ $ grep "[a-zA-z0-9]\+@[a-zA-z0-9\.]\+\.[a-z]\{2,4\}" /etc/* 2>/dev/null /etc/devfsd.conf:# Richard Gooch <rgooch@atnf.csiro.au> 3-JUL-2000 /etc/inittab:# Author: Miquel van Smoorenburg, <miquels@cistron.nl> /etc/inittab:# Modified by: Patrick J. Volkerding, <volkerdi@ftp.cdrom.com> ... рТЙ ТБВПФЕ У ОЕУЛПМШЛЙНЙ ЖБКМБНЙ grep РП ХНПМЮБОЙА ЙУРПМШЪХЕФ ЧЩЧПД ЙНЕОЙ ЖБКМБ РЕТЕД ОБКДЕООПК УФПЛПК.

йЪВБЧЙФШУС ПФ ЙНЕОЙ ЖБКМБ Ч ОБЮБМЕ УФТПЛЙ У РПНПЭША ЛМАЮБ -h. чЧЕУФЙ ЛПНБОДХ grep -h "[a-zA-z0-9]\+@[a-zA-z0-9\.]\+\.[a-z]\{2,4\}" /etc/* 2>/dev/null:

user@desktop ~ $ grep -h "[a-zA-z0-9]\+@[a-zA-z0-9\.]\+\.[a-z]\{2,4\}" /etc/* 2>/dev/null # Richard Gooch <rgooch@atnf.csiro.au> 3-JUL-2000 # Author: Miquel van Smoorenburg, <miquels@cistron.nl> # Modified by: Patrick J. Volkerding, <volkerdi@ftp.cdrom.com> ...

дМС ЧЩЧПДБ ФПМШЛП ОБКДЕООПК РПДУФТПЛЙ ЙУРПМШЪХЕФУС ЛМАЮ -o. чЧЕУФЙ ЛПНБОДХ grep -ho "[a-zA-Z0-9]\+@[a-zA-Z0-9\.]\+\.[a-z]\{2,4\}" /etc/* 2>/dev/null:

user@desktop ~ $ grep -ho "[a-zA-Z0-9]\+@[a-zA-Z0-9\.]\+\.[a-z]\{2,4\}" /etc/* 2>/dev/null rgooch@atnf.csiro.au miquels@cistron.nl volkerdi@ftp.cdrom.com ...

рПМХЮЙФШ ЧУЕ ЖБКМЩ ДЙТЕЛФПТЙЙ /etc/ У РПНПЭША ЛПНБОДЩ find /etc -type f 2>/dev/null, ЙЗОПТЙТХС ПЫЙВЛЙ:

user@desktop ~ $ find /etc -type f 2>/dev/null /etc/X11/xorg.conf.example /etc/X11/Sessions/kde-3.4 /etc/X11/Sessions/Xsession /etc/X11/chooser.sh ...

дМС ЛБЦДПЗП ЙЪ ОБКДЕООЩИ ЖБКМПЧ РТПЙЪЧЕУФЙ РПЙУЛ РПДУФТПЛЙ «nameserver». дМС ЬФПЗП ЧЧЕУФЙ ЛПНБОДХ find /etc -type f -exec grep "nameserver" {} \; 2>/dev/null:

user@desktop ~ $ find /etc -type f -exec grep "nameserver" {} \; 2>/dev/null # merge the new nameservers with the other options from the old ... grep --invert-match '^nameserver[[:space:]]' $REALRESOLVCONF nameserver 10.22.10.20 ...

дМС ВПМШЫЕЗП ХДПВУФЧБ ДПВБЧЙФШ ЧЩЧПД ЙНЕОЙ ЖБКМБ (ЛМАЮ -H) Й ОПНЕТБ УФТПЛЙ (ЛМАЮ -n), ОБ ЛПФПТПК ВЩМП ОБКДЕОП УПЧРБДЕОЙЕ, У РПНПЭША ЛПНБОДЩ find /etc -type f -exec grep -Hn "nameserver" {} \; 2>/dev/null:

user@desktop ~ $ find /etc -type f -exec grep -Hn "nameserver" {} \; 2>/dev/null /etc/ppp/ip-up:24: # merge the new nameservers with the other optio... /etc/ppp/ip-up:26: grep --invert-match '^nameserver[[:space... /etc/ppp/resolv.conf:1:nameserver 10.22.10.20 ... фБЛЙН ПВТБЪПН, ЛПНБОДБ grep НПЦЕФ ЬЖЖЕЛФЙЧОП ЙУРПМШЪПЧБФШУС ЧНЕУФЕ У ЛПНБОДПК find ДМС ОБИПЦДЕОЙС ЙОЖПТНБГЙЙ Ч ЖБКМБИ.

ъБДБОЙС ДМС УБНПРПДЗПФПЧЛЙ уПЪДБКФЕ ЛБФБМПЗ test1 Ч ДПНБЫОЕК ДЙТЕЛФПТЙЙ. уТБЧОЙФЕ ЧТЕНС УПЪДБОЙС УЙУФЕНОЩИ ЛБФБМПЗПЧ /bin, /tmp У ЛБФБМПЗПН test1.

уЛПРЙТХКФЕ ЖБКМ /bin/ls Ч МПЛБМШОХА ДЙТЕЛФПТЙА. рПУНПФТЙФЕ БФТЙВХФЩ ЬФПЗП ЖБКМБ. рПРТПВХКФЕ ЪБРХУФЙФШ ЕЗП.

уПЪДБКФЕ Ч МПЛБМШОПК ДЙТЕЛФПТЙЙ УЙНЧПМЙЮЕУЛХА УУЩМЛХ tmplnk ОБ ДЙТЕЛФПТЙА /tmp. уЛПРЙТХКФЕ ОЕУЛПМШЛП ЖБКМПЧ Ч ДЙТЕЛФТЙА tmplnk.

уТБЧОЙФЕ ЖБКМЩ /dev/tty1 Й /dev/hda1. лБЛПК ФЙР ПОЙ ЙНЕАФ? юЕН ПОЙ ПФМЙЮБАФУС?

оБКДЙФЕ ЧУЕ ЖБКМЩ Ч УЙУФЕНЕ, ЛПФПТЩЕ ВЩМЙ НПДЙЖЙГЙТПЧБОЩ ОЕ ВПМЕЕ УХФПЛ ОБЪБД.

у РПНПЭША ПДОПК ЛПНБОДЩ ОБКДЙФЕ ЧУЕ ЖБКМЩ У ТБУЫЙТЕОЙЕН .html Ч ДЙТЕЛФПТЙЙ /usr Й УЛПРЙТХКФЕ ЙИ Ч МПЛБМШОХА РБРЛХ htmls.

уПЪДБКФЕ БТИЙЧ ДЙТЕЛФПТЙЙ /etc Й ХЪОБКФЕ ЕЗП ТБЪНЕТ. рПРТПВХКФЕ УПЪДБФШ УЦБФЩК БТИЙЧ ФПК ЦЕ РБРЛЙ. уТБЧОЙФЕ УФЕРЕОШ УЦБФЙС gzip Й bzip2 ОБ ЬФПН РТЙНЕТЕ.

уПЪДБКФЕ ФЕЛУФПЧЩК ЖБКМ a.txt ЙЪ ДЕУСФЙ УФТПЛ. хЪОБКФЕ ЕЗП ТБЪНЕТ. уПЪДБКФЕ ОПЧЩК ЖБКМ, УПДЕТЦБЭЙК Ч УЕВЕ ЖБКМ a.txt ЮЕФЩТЕ ТБЪБ.

у РПНПЭША ПДОПК ЛПНБОДЩ ОБКДЙФЕ ЧУЕ ЖБКМЩ У ТБУЫЙТЕОЙЕН .txt Ч ДЙТЕЛФПТЙЙ /usr Й ПВЯЕДЙОЙФЕ ЙИ Ч ПДЙО ВПМШЫПК ЖБКМ big.txt.

рПМХЮЙФЕ У РПНПЭША ПДОПК ЛПНБОДЩ ЖБКМ, УПДЕТЦБЭЙК ЧУЕ ЮЙУМПЧЩЕ ЙДЕОФЙЖЙЛБФПТЩ РПМШЪПЧБФЕМЕК, ЪБТЕЗЙУФТЙТПЧБООЩИ Ч УЙФУЕНЕ.

рПМХЮЙФЕ У РПНПЭША ПДОПК ЛПНБОДЩ УФТПЛЙ У 5-ПК РП 8-А Ч ЖБКМЕ /proc/cpuinfo, УПДЕТЦБЭЕН ЙОЖПТНБГЙА П РТПГЕУУПТЕ.

рТЙДХНБКФЕ ТЕЗХМСТОПЕ ЧЩТБЦЕОЙЕ, УППФЧЕФУФЧХАЭЕЕ URL У ЙУРПМШЪПЧБОЙЕН РТПФПЛПМБ http. оБКДЙФЕ ЧУЕ УФТПЛЙ, УПДЕТЦБЭЙЕ ФБЛЙЕ URL Ч ЖБКМБИ ДЙТЕЛФПТЙЙ /etc.

у РПНПЭША ПДОПК ЛПНБОДЩ ОБКДЙФЕ ЧУЕ ЖБКМЩ У ТБУЫЙТЕОЙСНЙ .txt ЙМЙ .html Ч ДЙТЕЛФПТЙЙ /usr, Ч ЛПФПТЩИ УПДЕТЦЙФУС УМПЧП user.