[LVEE-Talks] Воркшоп: Обработка текста в Bash

Alexei Khlebnikov alexei.khlebnikov на gmail.com
Ср Янв 27 15:54:31 MSK 2016


Привет всем,

Хочу предложить воркшоп по обработке текста в Bash с помощью Unix-утилит.


== Зачем это нужно ==

В Unix, да и не только, много информации представлено в виде текста. Это
всевозможные листинги, отчёты, исходные коды, конфиги, логи, вывод
command-line утилит и так далее. Часто возникает задача извлечь из большого
количества текста что-то полезное, или отфильтровать что-то ненужное, или
преобразовать в более удобоваримую форму, или отсортировать, или посчитать
какую либо статистику по данным. Или переименовать файлы, сгенерив для них
имена. Некоторые люди пишут большие программы на С для этого и потом
мучительно их отлаживают, или забивают и делают работу вручную, тратя
неимоверную кучу времени. Другие люди пишут программы попроще на
Ruby/Python/Perl. Очень часто такой подход - overkill. Да и не все мы
программисты. Написать однострочник в shell - легче и гораздо быстрее. Как
это делать, комбинируя стандартные (и не очень) утилиты командной строки -
научит данный воркшоп.

== Целевая аудитория ==

Этот воркшоп будет полезен для новичков и людей поопытнее, хотящих
упорядочить свои разрозненные знания по обработке текста с помощью
Unix-утилит. По моему опыту, для многих людей grep - самая сложная утилита,
что они используют. Так изменим же это!

Обработка текста -
Полезна новичку,
И крутому профи,
И даже старичку.

== Что в программе ==

* Напоминание, что такое piping, оно же перенаправление ввода-вывода в
shell.
* Специальные источники ввода и приёмники вывода.
* Рассмотрение стандартных (и не очень) утилит: echo, cat, cut, tac, seq,
head, tail, touch, tr, xxd, sort, uniq, grep/egrep/pgrep, wc, tee, find,
xargs, sed, awk, rpl, rename, etc.
* Вскользь упоминаются perl и ruby.
* Комбинирование утилит, построение длинных однострочников шаг за шагом и
их отладка.
* Генерация одних скриптов другими и их запуск, с предпросмотром результата
генерации и без.
* "for" vs "xargs".
* Некоторые отличия GNU- и BSD- наборов утилит.
* Полезные и вредные пробелы. Как использовать первые и бороться со вторыми.
* Регулярные выражения.
* "Полный" курс Awk на 13 слайдах. Офигейте от того как прост и мощен Awk,
как офигел когда-то я.
* Флеймообразующее: Почему Sed - отстой, и его область применения следует
ограничить, хоть и не отказаться от него полностью.
* Философское: Структурированный текст - это база данных, с записями и
полями.
* Границы применимости "маленьких" утилит и когда таки стоит использовать
Ruby/Python/Perl.


Будет ли народу интересен такой воркшоп?


/Алексей.
----------- следущая часть -----------
Вложение в формате HTML было извлечено…
URL: <http://lists.lvee.org/pipermail/talks/attachments/20160127/927d3905/attachment.html>


Подробная информация о списке рассылки Talks