Аднастрочнікі Shell — различия между версиями
Svetit (обсуждение | вклад) (→Некаторыя простыя каманды) |
Svetit (обсуждение | вклад) (→Перанакіраванне стандартнага увода/вывада) |
||
Строка 24: | Строка 24: | ||
==Некаторыя простыя каманды== | ==Некаторыя простыя каманды== | ||
− | ===Перанакіраванне стандартнага | + | ===Перанакіраванне стандартнага вывада=== |
Каб перанакіраваць стандартны вывад у іншы файл замест экрана, трэба дадаць у каманду аператар перанакіравання > і імя файла. | Каб перанакіраваць стандартны вывад у іншы файл замест экрана, трэба дадаць у каманду аператар перанакіравання > і імя файла. | ||
Строка 39: | Строка 39: | ||
Каб дадаць вывад у канец існуючага файла: | Каб дадаць вывад у канец існуючага файла: | ||
ls -l /usr/bin >> ls-output.txt | ls -l /usr/bin >> ls-output.txt | ||
+ | |||
+ | ===Перанакіраванне стандартнага ўвода=== | ||
==Заданне== | ==Заданне== |
Версия 18:34, 19 февраля 2018
Мэта: Пазнаёміцца і папрактыкавацца з асноўнымі камандамі перанакіравання у shell.
Содержание
[убрать]Тэорыя
Адна з крыхут магчымасцяў каманднага радка: перанакіраванне ўвода/вывада. Дзякуючы ёй магчыма перанакіроўваць увод і вывад каманд з файлаў і ў файлы, а таксама складаць з камандаў цэлыя канвейеры. Для дэманстрацыі гэтай магчымасці увядзем наступныя каманды:
- cat - аб'ядноўвае файлы.
- sort - сарціруе радкі тэкста.
- uniq - паведамляе пра паўторныя адкі ці выдаляе іх.
- wc - выводзіць колькасць сімвалаў пераводу радка, слоў і байтаў у кожным пазначаным файле.
- grep - знаходзіць і выводзіць радкі суадносна з шаблонам.
- head - выводзіць першыя радкі файла.
- tail - выводзіць апошнія радкі файла.
- tee - чытае дадзеныя са стандартнага увода і запісвае у стандартны вывад і у файлы.
Стандартны увод, вывад і вывад памылак
Шматлікія прылады shell выводзяць што-небудзь на кансоль. Гэты вывад часта дзеліцца на два тыпа. Першы - вынікі працы прылады, значыць, дадзеныя, для атрымання якіх стваралася прылада. Другі - паведамленні пра станы ці памылкі, якія паведамляюць пра самаадчуванне прылады. Напрыклад, калі глянуць на вывад каманды ls, можна пабачыць, што яна выводзіць на экран вынікі сваёй працы і часам паведамленні пра памылкі.
Згодна з цэнтральнай ідэяй Unix, што "усё існае ёсць файл", такія прылады, як ls, насамрэч выводзяць свае вынікі ў спецыяльны файл, які называецца стандартным вывадам (standard output, часта вызначаецца як stdout), а паведамленні пра стан - у спецыяльны файл стандартны вывад памылак (standard error, stderr). Па змоўчанні оба файла, стандартны вывад і стандартны вывад памылак, звязаны з экранам і не захоўваюцца на дыске.
Акрамя таго, шматлікія прылады прымаюць увод са спецыяльнага файла з назвай стандартны увод (standard input, stdin), які па змоўчанні звязаны з клавіятурай.
Механізм перанакіравання увода/вывада дазваляе змяняць кірунак вывада і уводу. Звычайна вывад адбываецца на экран, а увод - з клавіятуры, але механізм перанакіраванні дазваляе змяніць гэты парадак рэчаў.
Некаторыя простыя каманды
Перанакіраванне стандартнага вывада
Каб перанакіраваць стандартны вывад у іншы файл замест экрана, трэба дадаць у каманду аператар перанакіравання > і імя файла.
ls -l /usr/bin > ls-output.txt
Тут доўгі спіс зместу файла /usr/bin будзе накіраваны ў ls-output.txt
Праглядзім змест файла ls-output.txt
less ls-output.txt
Ачысціць файл можна наступным чынам:
> ls-output.txt
Каб дадаць вывад у канец існуючага файла:
ls -l /usr/bin >> ls-output.txt
Перанакіраванне стандартнага ўвода
Заданне
Для выканання заданняў вам спатрэбіцца шукаць дадатковую інфармацыю пра каманды shell у інтэрнэце!
Удаленае падключэнне да сэврвера на Windows
- Зайсці у тэчку "Загрузки", запусціць прыладу putty.exe
- У поле Host Name (or IP Address) запісаць 10.194.0.220
- У акне кансолі ўвесці лагін: user і пароль: user.
Цяпер вы працуеце на ўдаленам Linux сэрверы.
Літаратура
- Уильям Шоттс, "Командная строка Linux", 2017, с.70.