Alexey
12.07.2024
Обработка текста в консоли и консольные текстовые редакторы
awk, Perl, sed, tail
Для исправления ошибки, о которой я писал в предыдущей заметке, мне понадобилось удалить единственную строку из файлов с экспортированными базами данных. При этом размер некоторых файлов превышает 2 Гб и это действие не является единичным. Если вы попробуете открыть файл…
ДАЛЕЕ
Alexey
09.07.2022
Обработка текста в консоли и консольные текстовые редакторы
awk, cat, белые пробелы, табуляция / Tab / tabulation
Почему awk неправильно определяет границы данных, разделённых табуляцией Следующая команда вместо ожидаемого третьего столбца вернёт пустой результат: echo '1 2 3 4 5 6' | awk -F'\t' '{ print $3 }' В команде вместо стандартного FS (Input field separator, разделитесь…
ДАЛЕЕ
Alexey
09.07.2022
PHP, Python, Ruby, Обработка текста в консоли и консольные текстовые редакторы
awk, Bash, NodeJS, Perl, PHP, Python, Ruby, sed, tr, zsh
В этой заметке будет показано, как преобразовать строку в верхний регистр (заглавные буквы буквы, прописные буквы) в командной строке Linux. Чтобы конвертировать строку в большие буквы независимо от её текущего регистра, используйте одну из следующих команд. tr echo "Hi all"…
ДАЛЕЕ
Alexey
09.07.2022
PHP, Python, Ruby, Обработка текста в консоли и консольные текстовые редакторы
awk, Bash, NodeJS, Perl, PHP, Python, Ruby, sed, tr, zsh
В этой заметке будет показано, как преобразовать строку в нижний регистр (строчные буквы) в командной строке Linux. Чтобы конвертировать строку в маленькие буквы независимо от её текущего регистра, используйте одну из следующих команд. tr echo "Hi all" | tr '[:upper:]’…
ДАЛЕЕ
Alexey
09.07.2022
Обработка текста в консоли и консольные текстовые редакторы
awk, cut, sed, белые пробелы
В этой заметке рассмотрим, как вывести с определённого столбца до последнего. Например: как вывести со второго столбца до последнего как вывести с третьего столбца до последнего как вывести с четвёртого столбца до последнего как вывести с n-го столбца до последнего…
ДАЛЕЕ
Alexey
09.07.2022
Обработка текста в консоли и консольные текстовые редакторы
awk, интерфейс командной строки (CLI)
Оглавление 1. Так что такое AWK? 2. Что может делать AWK? 3. Специальные переменные 4. Простые примеры Awk 5. Вызов функций 6. Массивы 7. AWK и оболочки (sh/ksh/bash/csh) 8. Вопросы и ответы по awk 9. Примеры решения задач с помощью…
ДАЛЕЕ
Alexey
08.07.2022
Обработка текста в консоли и консольные текстовые редакторы
awk, echo, newline, paste, Perl, printf, sed, tr, xargs, белые пробелы
Как удалить newline (перевод строки) из строки в Bash Для перевода строки в операционных системах используются символы: '\n' (newline) '\r' (carriage return) Причём в Linux используется \n (также называется EOL, End of Line, newline, новая строка). В других операционных системах…
ДАЛЕЕ
Alexey
14.03.2021
Обработка текста в консоли и консольные текстовые редакторы, Офисные программы
iconv, кодировка, ошибки, решение проблемы
Фильтрация невалидных UTF-8 символов Файлы, которые кроме обычных символов содержат неверные с точки зрения UTF-8 символы, вызывают проблему как при обработке их утилитами, так и при открытии в текстовых редакторах. Пример ошибки в Python 3 при попытке обработать файл с…
ДАЛЕЕ
Alexey
24.12.2020
Обработка текста в консоли и консольные текстовые редакторы
cat, split
Инструкция по использованию split У меня есть большой (по количеству строк) текстовый файл, который я хотел бы разделить на файлы меньшего размера, также по количеству строк. Поэтому, если в моем файле около 2 млн строк, я хотел бы разделить его на…
ДАЛЕЕ
Alexey
02.12.2020
Обработка текста в консоли и консольные текстовые редакторы
printf, обработка текста, форматирование
В отличие от многих других команд, команда printf не используется для конвейеров (она не принимает стандартный ввод) и не находит частого применения непосредственно в командной строке (чаще всего используется в сценариях). Так почему так важна? Потому что printf так широко…
ДАЛЕЕ
Alexey
01.11.2020
Обработка текста в консоли и консольные текстовые редакторы
jq, JSON
Мы уже рассмотрели вопрос, как отформатировать XML в командной строке чтобы он стал удобным для чтения, а есть ли способ в командной строке Linux отформатировать JSON в удобочитаемый вид? По сути, нам нужно, что следующее: { "foo": "lorem", "bar": "ipsum"…
ДАЛЕЕ
Alexey
24.10.2020
Обработка текста в консоли и консольные текстовые редакторы
tidy, XML, xml_pp, xmllint, xmlstarlet
Есть ли программа с интерфейсом командной строки (Linux) для форматирования XML в удобочитаемую форму? По сути, я хочу, чтобы он изменил следующее: <root><foo a="b">lorem</foo><bar value="ipsum" /></root> … в примерно такой вид: <root> <foo a="b">lorem</foo> <bar value="ipsum" /> </root> Вариантов отформатировать…
ДАЛЕЕ
Alexey
15.06.2020
Обработка текста в консоли и консольные текстовые редакторы
awk, Perl, printf, консольные текстовые редакторы, обработка текста, строки
Иногда необходимо привести строки или числа разной длины к определённому стандарту, например, сделать так, чтобы они содержали одинаковое количество символов. В этом случае, если строка короче необходимой длины, вначале нужно добавить нули. Данная статья опишет, как это сделать. Показанные ниже…
ДАЛЕЕ
Alexey
14.06.2020
Обработка текста в консоли и консольные текстовые редакторы
awk, Ruby, sed, консольные текстовые редакторы, обработка текста, регулярные выражения, строки
Программа sed и некоторые другие программы могут искать совпадения и делать замены. В большинстве случаев нужно найденную подстроку заменить на другую подстроку или удалить вовсе. Пример команды sed, которая ищет подстроку и заменяет на указанную: echo 123456789 | sed 's/6789/4321/'…
ДАЛЕЕ
Alexey
14.06.2020
Обработка текста в консоли и консольные текстовые редакторы
awk, Perl, sed, консольные текстовые редакторы, обработка текста, строки
Рассмотрим варианты, когда в командной строке Linux для всех строчек в файле нужно добавить строку в начало, в конец или сразу в начало и конец. К примеру, нужно добавить в файл .htaccess тысячи IP адресов для блокировки, которые содержатся в…
ДАЛЕЕ