decode-mail-headers
Описание
Утилита ищет почтовые заголовки и декодирует их в читаемый вид. Утилита считывает файлы или строки до первой пустой строки или конца файла, объединяет многострочные заголовки в одну строку, декодирует заголовки в читаемый формат. При наличии аргументов проводит построчный поиск по подстроке или регулярному выражению. Поиск идет до первого совпадения.
Компиляция
- целевая ОС и архитектураGOOS=linux GOARCH=amd64- исключает различную отладочную информацию (уменьшит размер файла)-ldflags "-s -w"- имя исполняемого файла-o decodemailheaders
Аргументы
- строка для поиска-substr- регулярное выражение для поиска-regexp- показать найденный заголовок вместо всех заголовков-oneline
Аргумент работает только если задан или .
Аргумент приоритетнее чем . При указании и и сработает только .
Список файлов идет после аргументов.
Утилита работает в конвейере () и со стандартным вводом () если в аргументах не указаны файлы.
Примеры
Пример 1
Искать в папке /path/to/mail/folder/ файлы содержащие строку To:, вывести только найденную строку.
Пример 2
Найти все файлы по пути /path/to/mail/folder во вложенных папках cur и new, включающие строку начинающуюся с Subject: и содержащую текст Test или test. Результат сохранить в файл report.txt
- разрешает использование /**/ (текущий каталог и все подкаталоги рекурсивно)shopt -s globstar- поиск по пути path, тип файл, печатать на стандартный вывод завершая строку нулевым символом (такой формат используется в xargs -0)find path -type f -print0- передать program стандартный вывод в качестве последнего параметраxargs -0 program- вывести только найденную строку, искать по регулярному выражению ^Subject:.*[Tt]estdecodemailheaders -oneline -regexp "^Subject:.*[Tt]est"
Проблемы
- Утилита не понимает тип кодировки x-user-defined.