действительно ли возможно инвертировать вывод команды “фильтров”?

Да. В любой оболочке POSIX, которую вы можете сделать...

set -o vi
^[[num]-#^[[num]_

... где ^ [ представляет клавишу ESC и [num] представляет необязательный параметр для n -й команды истории, отсчитываемой назад от текущей, и n -го аргумента в предыдущей команде, отсчитывающейся назад от последней соответственно. В зависимости от конфигурации клавиатуры можно использовать комбинацию клавиш CTRL и комбинацию клавиш.

Последовательность вызывает нумерованную команду, добавляет к ней комментарий # и сохраняет его в истории оболочки как самую предыдущую команду. Затем ярлык ^ [_ вызывает последний arg в последней команде.

bash также сохраняет последний arg по умолчанию в параметре оболочки $ _ , поэтому после выполнения первой части можно просто развернуть последний arg в этом пути.

-121--89293-

Если вы хотите прочитать их с помощью MUA (агента пользователя почты, клиентского программного обеспечения для чтения и записи почты), то вам нужно просто использовать программное обеспечение, поддерживающее формат Maildir. Mutt делает, для одного. Используйте параметр командной строки -f , чтобы указать, какую папку открыть:

mutt -f Mail/INBOX

mutt -f Mail/otherfolder

В зависимости от конфигурации папки Maildir могут храниться в расположении, отличном от ~/Mail , например ~/Maildir . Проверьте конфигурацию Dovecot или просто посмотрите на свой домашний каталог, чтобы узнать, где они находятся.

Другой способ, возможно, лучше, использовать тот факт, что Mutt (и другие MUA на основе терминалов тоже) поддерживают IMAP, так что вы можете просто сказать ему, чтобы получить доступ к почте через ваш сервер Dovecot и оставить детали того, как папки хранятся и организованы Dovecot. Для Mutt вы указываете папки IMAP с помощью специального синтаксиса:

mutt -f {username@imap-server}INBOX

Конечно, если доступ через IMAP, то вам не нужно запускать mutt в той же системе, что и сервер Dovecot.

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

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

-121--248751-

При использовании SECONDS и time вы получите относительные значения.Если вы хотите иметь абсолютные значения для целей аудита и отчетности относительно времени выполнения сценария и его завершения, вы можете попробовать что-то подобное до и после команд дата '+% Y% m% d% H% M% S.% N' . Это также может дать вам лучшую гранулярность, так как она может фиксировать различия в субсекундах, поскольку у вас есть команды, такие как ping , которые обычно выполняются в течение секунды.

0
21.02.2014, 18:13
1 ответ

ky00te по крайней мере не обратимый:

1
28.01.2020, 02:52

Теги

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