русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

ЗАДАНИЯ


Дата добавления: 2015-07-09; просмотров: 493; Нарушение авторских прав


· Получите список всех учетных записей пользователей вашей системы, у кото- рых имя домашнего каталога (последнего каталога в пути) совпадает с име- нем пользователя.

· Проверьте, имеются ли в файле /var/log/messages (файл системного журна- ла) сообщения, у которых во времени совпадают часы и минуты (например, 09:09).

 

Использование регулярных выражений с sed

Регулярные выражения позволяют адресоваться к строкам, обрабатываемым sed. Регулярное выражение указывается в косых чертах. Так, например, для вставки строки-разделителя после учетных записей, использующих в качест- ве оболочки bash, с предварительным удалением строк учетных записей пользователей, использующих оболочки, имена которых не заканчиваются на sh, можно задать команду, приведенную в примере 9.15.

 

Пример 9.15. Регулярные выражения в sed

 

$ sed -e '/[^s][^h]$/d' -e '/bash/a \

@@@@@@@@@@@@@@@@@@@@' /etc/passwd root:x:0:0:System Administrator:/root:/bin/bash

@@@@@@@@@@@@@@@@@@@@ bamboo:x:501:100::/home/bamboo:/bin/csh tania:x:502:502::/home/tania:/bin/bash

@@@@@@@@@@@@@@@@@@@@ figus:x:503:503::/home/figus:/bin/bash

@@@@@@@@@@@@@@@@@@@@ user1:x:504:100::/home/user1:/bin/bash


 

Опция -e команды sed используется для указания того, что дальше в ко- мандной строке будет задан сценарий sed (пример 9.15). Первый сценарий удаляет все строки, не заканчивающиеся на строку sh, а второй добавляет разделительную строку только после строк, заканчивающихся на bash.

Очень удобно использовать sed для замены строк в потоке, адресуясь к стро- кам с помощью регулярных выражений. Например, требуется заменить в по- токе, считанном из /etc/group, вхождения daemon в конце строк на angel (пример 9.16).

 

Пример 9.16. Замена с помощью регулярных выражений



 

$ sed 's/daemon$/angel/' /etc/group

 

 

К сожалению, sed работает только с очень ограниченным базовым набором регулярных выражений. Однако при замене подстрок имеется возможность вставлять в подстроку-замену исходную подстроку, удовлетворившую шаб- лону. Так, например, требуется вывести список всех файлов текущего ката- лога с суффиксом .txt так, чтобы к имени файлов была добавлена строка

.b ak (пример 9.17).

 

Пример 9.17. Обращение к найденной строке с помощью &

 

$ ls *.txt | sed 's/txt$/&.bak/' dir.txt.bak

distfiles.txt.bak ps.txt.bak

 

Для обращения к подстроке, удовлетворившей найденному регулярному вы- ражению, в sed используется оператор &.

 



<== предыдущая лекция | следующая лекция ==>
Использование обратных ссылок | ЗАДАНИЯ


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 2.792 сек.