Как захватить самое старое непрочитанное сообщение от 'почты' в сценарии?

Необходимо смочь избавиться от вывода библиотек путем передачи по каналу stderr далеко

cvlc -q mymedia 2> /dev/null

Что касается команд, я не уверен, что vlc принимает команды от плоскости stdin, но это кажется, что емкостно-резистивный интерфейс мог бы быть тем, что Вы ищете.

cvlc -q -Irc mymedia 2> /dev/null
5
29.04.2014, 18:18
3 ответа
[119213] В обычных системах [119647] mbox[119648] первым сообщением в [119649]/var/mail/you[119650] является -- по определению -- непрочитанное и самое старое из доступных.

Чтобы извлечь сообщение в файл (чтобы можно было удобно переслать только это сообщение), а затем извлечь заголовок [119651]Subject:[119652], попробуйте что-нибудь вроде

В Мейлдире ситуация несколько сложнее. Новые сообщения временно сохраняются в [119653]tmp[119654], а затем перемещаются в [119655]cur[119656]. Имя файла указывает на флаги; [119657] во многих словах [119658] ищет имя файла, содержащее запятую в конце, где [119659]S[119660] не находится среди символов после запятой.

Спецификатор формата [119661]printf[119662] сначала печатает метку времени для удобства сортировки. Мы сортируем, захватываем первую строку, обрезаем метку времени и передаем ее в [119663]formail[119664] для извлечения заголовка [119665]Subject:[119666]. (Очевидно, что это сломается, если у вас есть фанковые имена файлов с новыми строками или что-то в этом роде; есть способы обойти это, но я ленив и практичен здесь)

Рефакторинг для простого вывода имени файла должен быть тривиальным в этом случае -- просто уберите трубку в [119667]xargs[119668] и захватите вывод в переменную.

Некоторые реализации Maildir также будут иметь некий индекс, который может сделать эту задачу намного проще и быстрее, чем прохождение всего почтового ящика в файловой системе, но опять же, не зная, какую реализацию вы используете, на данный момент это всего лишь спекулятивная заметка.

Если ваш почтовый ящик не находится ни в одном из этих двух форматов, (вы странный и) вам нужно обновить вопрос более подробно.

Ваша ссылка на [119669]mail[119670] подразумевает, что вы, вероятно, используете традиционную систему Berkeley [119671]mbox[119672], но существует множество версий, некоторые из которых несколько эзотеричны.[119228].

2
27.01.2020, 20:42
[119229]Команда [119673]mail[119674] может быть использована неактивно для распечатки списка писем в папке входящих:

1
27.01.2020, 20:42
[119085] Существует как минимум три формата доставки почты. Поможет узнать, какой из них вы используете.

formail[119515] прочитает почтовый файл и может выводить заголовки из конкретного сообщения через пропуск и общие параметры. Это предполагает, что сообщения были доставлены в известный файл. Если вы хотите архивировать все сообщения, то это будет подходящим инструментом.

procmail[119517] больше подходит для архивирования сообщений по мере их поступления. Его можно легко настроить на отправку копии на другой адрес во время доставки. Существуют стандартные методы, позволяющие избежать блокировки почты и пропустить определенные типы сообщений.[119090].

-1
27.01.2020, 20:42

Теги

Похожие вопросы