47856 (597363), страница 8
Текст из файла (страница 8)
n - поиск следующей строки в файле, аналогичной найденной
N - поиск предыдущего вхождения в файл заданной строки.
Редактор имеет возможности поиска строк по шаблонам (например по диапазону символов) и пр.
На экране содержимое редактируемого файла представляется как бы через некоторое окно со следующими полями (сверху - вниз):
-
область текста файла;
-
область пустых строк, которые надо ввести, если они понадобятся;
-
тильда (~) - область для ввода дополнительного текста файла, но пустых строк этой области в файле нет;
-
область сообщений редактора или область префиксных ex-команд - операций редактора над группой строк файла или над целым файлом (команды вводятся на приглашение ":", отображаются на экране и исполняются по команде управляющей клавиши перевода строки).
Команды используются для многострочных операций с редактируемым файлом и настройки сеанса редактирования:
:w файл - запись текущего буфера в файл;
:m,nw файл - запись строк с m-ой по n-ую в файл;
:e! - отмена всех изменений в буфере с перезагрузкой в него файла с диска;
:e файл - загрузка файла в буфер редактирования, файл замещает старое содержимое самого буфера;
:r файл - добавление содержимого файла после текущего положения курсора;
:set опция - значение опций определяет настройку редактора и пр.
Практическая работа №6(1) Изучение интерфейса редактора vi
Цель работы:
-
Изучить основные возможности встроенного текстового редактора vi - наиболее распространенного средства для построения текстовых файлов, исходных текстов программ и shell-процедур.
Порядок выполнения работы
-
Зарегистрируйтесь в ОС Linux. Запустите на выполнение программу Терминал.
-
Войдите в редактор с созданием нового пустого файла с произвольным именем и расширением - .1.
-
Изучите интерфейс редактора vi. Как перейти в командный режим редактора? В текстовый режим редактора? Какие операции с текстом позволяет выполнить редактор?
-
Поместите в созданный файл текст, включающий не менее четырех строк с несколькими словами в каждой.
-
Вставьте по одной пустой строке до и после одной из строк файла.
-
Заполните пустые строки произвольным текстом.
-
Вставьте еще по одной строке в середину текста файла без предварительного резервирования пустых строк.
-
Перейдите в режим редактирования и выполните произвольное редактирование отдельных слов и строк файла с использованием всех команд из групп "Команды изменения текста" и "Команды отмены произведенных изменений в текущей строке".
-
Выйдите из редактора с сохранением файла. Убедитесь в сохранении созданного файла.
Практическая работа №6(2) Создание и редактирование текста с помощью редактора vi
Цель работы:
-
Изучить основные возможности встроенного текстового редактора vi.
-
Научиться редактировать текстовые файлы средствами редактора vi.
Порядок выполнения работы
Изучаются команды:
-
сохранение файлов;
-
ввода текста;
-
удаления фрагментов текста;
-
копирования фрагментов текста в буферную область памяти;
-
вставки содержимого буфера в текст файла;
-
редактирования (изменения) текста;
-
поиска строк файлов по их фрагментам;
-
многострочных операций с файлом (префиксные команды)
-
Зарегистрируйтесь в ОС Linux. Запустите на выполнение программу Терминал.
-
Войдите опять в vi для редактирования созданного файла с использованием команд из групп "Команды копирования в буфер" и "Команды вставки буфера в текст".
-
Поменяйте местами несколько слов в строках файла.
-
Поменяйте местами несколько строк.
-
Поменяйте местами последовательно начало строки с её концом и наоборот.
-
Выполните операции поиска строк файла по заданным их фрагментам с различными направлениями поиска ( см. "Команды поиска строки файла по фрагменту её текста").
-
Не выходя из vi, перепишите полученную в результате редактирования версию файла в файл с тем же именем, но с расширением .new.
-
Добавьте первые 3 строки редактируемого файла к файлу .1.
-
Не выходя из vi, загрузите в буфер файл с расширением .1.
-
Последовательно удалите части строк и несколько строк с использованием команд из группы "Команды удаления текста".
-
Выйдите из редактора без сохранения файла.
-
Просмотрите и проанализируйте содержимое редактируемых файлов в текущем каталоге.
Контрольные вопросы:
-
В чем особенности и преимущества встроенного редактора vi ОС UNIX?
-
Какие два основных режима работы использует редактор? Как осуществляется переключение режимов?
-
Какую структуру имеет экран при редактировании файла? Назначение полей экрана?
-
Как в vi организовано редактирование открытого в нем файла?
-
Как организована работа с клавишными командами редактора?
-
Что такое "префиксные команды" и их назначение? Как организована работа с командами этого вида?
-
Какие функции редактора Вы использовали при выполнении лабораторной работы?
Тема 2.5. Изучение сетевых команд shell
-
Сетевые команды Shell
Персональный компьютер на вашем рабочем месте может быть подключен к локальной сети. Более того, локальные сети становятся реальностью и в домашних условиях. Рассмотрим работу с одной из сетевых команд ОС Linux – утилитой netstat.
Утилита netstat выводит информацию о локальной сети и средствах TCP/IP. Именно к ней чаще всего обращаются администраторы, чтобы быстро отыскать причину неисправности в сети TCP/IP. Содержание и форма выходной информации зависят от операционной системы, но обычно выводятся следующие данные: список соединений, статистика сетевых интерфейсов, информация по буферам данных, содержание таблицы маршрутизации, статистика работы протокола. Характер выводимой информации можно выбирать с помощью опции командной строки.
Основные ключи утилиты:
при выведении параметров утилиты на экран используйте команду | more для постраничного вывода.
| Ключ | Функция |
| -r route | вывод таблицы маршрутизации |
| -i interfaces | вывод статистики сетевых интерфейсов |
| -s statistics | Фвывод статистики передачи данных (по протоколу SNMP) |
| -n numeric | имена портов в числовом виде |
| -N symbolic | имена портов в символическом виде |
| -l listening | вывод состояния портов, находящиеся в режиме ожидания |
| -a all | вывод состояния всех портов |
| Активные соединения через порты: | |
| -st | TCP |
| -u | UDP |
| -W | RAW |
| -X | UNIX |
Список соединений.
Команда netstat обладает набором ключей для отображения портов, находящихся в активном и/или пассивном состоянии. Таким образом, можно получить список всех серверных приложений, работающих на данном компьютере.
Информация выводится столбцами. В первом из них указан протокол, затем размеры очередей приема и передачи для установленного соединения на данной машине (на другом конце соединения размеры очередей могут быть другими), локальный и удаленный адреса и текущее состояние соединения.
Пример:
st1@pds:~ > netstat -ta
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 2 pds.sut.ru:telnet gerasim.pds.sut.ru:1288 ESTABLISHED
tcp 1 0 pds.sut.ru:4550 pds.sut.ru:3128 CLOSE_WAIT
tcp 1 0 pds.sut.ru:4548 pds.sut.ru:3128 CLOSE_WAIT
tcp 0 0 gw.pds.sut.:netbios-ssn marya.pds.sut.ru:1027 ESTABLISHED
tcp 0 0 gw.pds.sut.:netbios-ssn yanko.pds.sut.ru:1104 ESTABLISHED
tcp 0 0 gw.pds.sut.:netbios-ssn mumu.pds.sut.ru:1065 ESTABLISHED
tcp 0 0 *:6000 *:* LISTEN
tcp 0 0 *:3128 *:* LISTEN
tcp 0 0 *:53333 *:* LISTEN
tcp 0 0 *:389 *:* LISTEN
tcp 0 0 localhost:1032 localhost:1033 ESTABLISHED
tcp 0 0 *:netbios-ssn *:* LISTEN
tcp 0 0 *:smtp *:* LISTEN
tcp 0 0 *:imap2 *:* LISTEN
tcp 0 0 *:pop3 *:* LISTEN
tcp 0 0 *:login *:* LISTEN
tcp 0 0 *:shell *:* LISTEN
tcp 0 0 *:8000 *:* LISTEN
tcp 0 0 *:telnet *:* LISTEN
tcp 0 0 *:ftp *:* LISTEN
tcp 0 0 *:time *:* LISTEN
tcp 0 0 *:www *:* LISTEN
tcp 0 0 *:2049 *:* LISTEN
tcp 0 0 *:832 *:* LISTEN
--More—
Как видно из примера, большинство серверов находится в режиме ожидания запроса на соединение (LISTEN). В первой строке отражено соединение (ESTABLISHED) через telnet с машиной gerasim.pds.sut.ru. Состояние CLOSE_WAIT означает, что соединение разорвано, но переключение в состояние LISTEN еще не произошло; TIME_WAIT – что соединение ожидает разрыва. Если соединение находится в состоянии SYN_SENT, то это означает наличие процесса, который пытается установит соединение с несуществующим сервером. Состояние соединения имеет значение только для протокола TCP. Протокол UDP факта установления соединения не проверяет.
Содержание таблицы маршрутизации.
Каждое соединение машины с сетью называется сетевым интерфейсом. Машина, имеющая более одного интерфейса, может принимать данные по одному интерфейсу и передавать их по другому, таким образом осуществляя пересылку данных между сетями. Эта функция называется маршрутизацией, а машина, выполняющая ее – шлюзом.
Данные маршрутизации хранятся в одной из таблиц ядра. Для направления пакета по конкретному адресу ядро подбирает наиболее подходящий маршрут. Если такой маршрут отсутствует и нет маршрута по умолчанию, то отправителю возвращается сообщение об ошибке.
Команда netstat –r позволяет отображать таблицу маршрутизации.
Пункты назначения и шлюзы могут показываться или именами машин, или их IP-адресами. Флаги дают оценку маршрута.
Пример:
st1@pds:~ > netstat -r
Kernel IP routing table
Destination Gateway Genmask Flags Ifac
pds.sut.ru * 255.255.255.255 UH eth1
195.19.219.120 * 255.255.255.248 U eth0
195.19.219.128 * 255.255.255.192 U eth1
192.168.1.0 * 255.255.255.0 U eth0
195.19.221.0 lgw.ccs.sut.ru 255.255.255.0 UG eth1
193.125.0.0 lgw.ccs.sut.ru 255.255.0.0 UG eth1
loopback * 255.0.0.0 U lo
default lgw.ccs.sut.ru 0.0.0.0 UG eth1
| Название столбца | Расшифровка |
| Gatway | Имена используемых шлюзов |
| Genmask | Маска, используемая для отображения общей части адреса, соответствующего данному маршруту |
| Flags | Флаги, описывающие маршрут: G Маршрут использует шлюз |
|
| U Интерфейс активен, может использоваться для передачи данных |
|
| H Данные можно передавать только одному узлу |
|
| D Запись создана перенаправляющим сообщением протокола ICMP |
|
| M Запись модифицирована перенаправляющим сообщением протокола ICMP |
| Iface | Интерфейс, используемый для передачи пакетов |
Статистика сетевых интерфейсов.
При использовании ключа –i команды netstat на экран будут выведены статистические данные всех используемых интерфейсов. Исходя из них, можно выяснить, исправно ли соединение с сетью.
Пример:
st1@pds:~ > netstat -i
Kernel Interface table
Iface MTU Met RX-OK RX-ERR RX-DRP RX-OVR TX-OK TX-ERR TX-DRP TX-OVR Flg
eth0 1000 0 844904 0 17 0 1454454 5 0 0 BRU
eth0: 1000 0 - no statistics available - BRU
eth1 1500 0 590844 0 7 0 434438 59 0 0 BRU
lo 3924 0 45754 0 0 0 45754 0 0 0 LRU
| Название столбца | Расшифровка |
| Gatway | Имена используемых шлюзов |
| Genmask | Маска, используемая для отображения общей части адреса, соответствующего данному маршруту |
Ошибки являются следствием проблем в кабельной системе. В нормально работающей сети количество конфликтов (RX-OVR, TX-OVR) не должно превышать 3% от числа пакетов, а другие ошибки не должны составлять более 0,5% от общего числа пакетов.
Статистика передачи данных.
Команда netstat –s выдает содержимое счетчиков сетевых программ. В выходной информации есть разделы, относящиеся к различным протоколам: IP, ICMP, TCP, UDP. С ее помощью можно определить место появления ошибки в принятом пакете.
Пример:
st1@pds:~ > netstat -s















