Add Лучшие инструментарий для редактирования перечней
commit
7302a79cab
@ -0,0 +1,26 @@
|
|||||||
|
Что делать, в случае если используемый список имеет непростую построение?
|
||||||
|
Если информация разделены нестандартным образом либо содержат комбинированную данные, вероятно необходима предшествующая очистка. Отдельные [сервисы для работы со списками](https://martdaarad.com/profile/rosecartwright) предоставляют базовые возможности с этой целью (очистка ненужных промежутков, незаполненных строк). В сложных ситуациях следует подумать о применение регулярных выражений.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
Фундамент базиса в наборе инструментов любого IT-профессионала — это набор консольных утилит для работы с колонками. Они незатратны по ресурсам, скоростны и отлично взаимодействуют друг с другом.
|
||||||
|
|
||||||
|
awk — это целый язык программирования, созданный для обработки текста. Его сила в работе с колонками не имеет равных. Вы можете легко выводить определённые столбцы, искать строки по условию, выполнять арифметические операции над числами в колонках и даже суммировать значения. Команда awk 'print $1, $3' file.txt моментально покажет вам первую и третью колонку каждого ряда.
|
||||||
|
cut — утилита для точечного извлечения. Когда нужно просто вырезать часть строки по разделителю или по позициям байтов, cut справляется идеально. Он менее гибок, чем awk, но невероятно быстр и прост в базовых задачах.
|
||||||
|
paste — часто недооценённый герой. В то время как cut разрезает, то paste соединяет. Эта утилита позволяет сливать ряд файлов горизонтально, создавая новые колонки из старых данных. Крайне полезно для слияния данных всевозможных запрос<D0BE>
|
||||||
|
|
||||||
|
Существует ли лимит на размер перечня?
|
||||||
|
Ограничения технического характера присутствуют всегда, однако для большинства ежедневных задач они не играют роли. Хороший сервис без проблем обработает десятки и сотни тысяч строк. Проблемы могут возникнуть только с экстремально большими объемами данных.
|
||||||
|
|
||||||
|
Образец 2: Создание сводного доклада на основе лога.
|
||||||
|
One wayA methodAn approach to parseto filterto extract uniquedistinct ERRORerror codesmessages fromin the logapp.log iswould becan be:grep "ERROR" app.log cut -d'' -f2 cut -d'' -f1 sort uniq -c You canOne could runexecute grep "ERROR" app.log cut -d'' -f2 cut -d'' -f1 sort uniq -c for thisto achieve this.
|
||||||
|
Данный пайплайн обнаруживает ошибки, вырезает название компонента (допустим, он в квадратных скобках) и считает число ошибок по модулям.
|
||||||
|
|
||||||
|
Sort а также Uniq: Структурирование и обеспечение уникальности
|
||||||
|
Несмотря на то, что это не чисто колоночные утилиты, они тесно связаны с конвейерной обработкой. **sort** позволяет сортировать данные по определенной колонке, а **uniq** — находить или исключать повторяющиеся строки, что нередко следует после сортировки.
|
||||||
|
|
||||||
|
sort -k2,2n -t',' data.csv — сортировка CSV в соответствии со 2-й столбцу как по числу (n), разделитель — запятая (,) .
|
||||||
|
cut -d' ' -f1 log.txt sort uniq -c sort -nr — классическийстандартныйтипичный конвейерпайплайн для подсчетаопределения топсамых частыхнаиболее популярных IP-адресов в логелог-файле.
|
||||||
|
|
||||||
|
Преимущество: Полностью сохраняется исходный порядок элементов.
|
||||||
|
Недостаток: Производительность падает на очень больших данных, так как поиск элемента каждый раз выполняется в новом списк<D181>
|
||||||
Loading…
Reference in New Issue
Block a user