Я не уверен, как на самом деле выглядят ваши данные, поэтому лучшее, что я могу сделать, - это некоторые образованные догадки.
В metamail -q -w -x file_name
прошлом я успешно использовал сценарии для извлечения вложений. Как вы можете видеть man metamail
, он -w
говорит metamail не обращаться к файлу mailcap, а просто извлекает вложения, -q
говорит, что он тихий, потому что сценарии не любят дополнительный вывод, и -x
говорит, что он определенно не работает на терминале, поэтому это не должно задавать глупые вопросы.
У вас уже есть -w
, и вы также используете -y
, что не нужно, если почта правильно отформатирована, но, возможно, ваша нет - как я уже сказал, я не знаю, какие у вас данные. Страница man также предупреждает о странных эффектах, которые могут произойти -y
.
Итак, первая капля -y
, посмотрите, все ли еще работает. Затем добавьте -x
, посмотрите, перестанет ли он спрашивать. Наконец добавьте, -q
чтобы удалить нежелательный вывод.
редактировать
Будучи обвиненным в том, что я слишком ленив, чтобы попытаться, я сделал следующие шаги:
1) отправил мне почтовый файл с одним пустым файлом, используя mutt
. Вот полное письмо с некоторыми удаленными / отредактированными заголовками:
From mail Sat Mar 3 12:49:13 2018 Envelope-to: <dirk@...> ... Message-ID: <20180303114913.xr7xvpx2pso6wurn@feanor> MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="gsrhzrdopn4ddt7t" Content-Disposition: inline User-Agent: NeoMutt/20170609 (1.8.3) Content-Length: 480 Lines: 18 --gsrhzrdopn4ddt7t Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Test --gsrhzrdopn4ddt7t Content-Type: application/zip Content-Disposition: attachment; filename="foo.zip" Content-Transfer-Encoding: base64 UEsDBAoAAAAAALplY0wAAAAAAAAAAAAAAAAHABwAenp6L2Zvb1VUCQAD8IqaWvCKmlp1eAsA AQToAwAABOgDAABQSwECHgMKAAAAAAC6ZWNMAAAAAAAAAAAAAAAABwAYAAAAAAAAAAAApIEA AAAAenp6L2Zvb1VUBQAD8IqaWnV4CwABBOgDAAAE6AMAAFBLBQYAAAAAAQABAE0AAABBAAAA AAA= --gsrhzrdopn4ddt7t--
2) Сохранил его в названном почтовом ящике yyy
, затем запустил
METAMAIL_TMPDIR=. metamail -q -x -w ~/Mail/yyy
3) Как и ожидалось, metamail не запрашивает, а сохраняет все части как два файла с именем 1-M64bZlz
и 1-MKfamEn
. Второй - это zip-файл, первый - основной текст.
И сейчас? Это работает для меня, это не работает для вас.