bash를 사용하여 메일 첨부 파일 추출 / 저장


30

일반 bash도구 (예 : 기본 제공 도구 또는 일반적으로 사용 가능한 명령 줄 도구)를 사용하면

  • 가능하고
  • 방법

이메일에서 첨부 파일을 추출 / 저장하려면?

예를 들어, 이메일을 통해 도착하지만 여러 로그 파일의 zip 아카이브 인 야간 보고서가 있다고 가정합니다. 모든 압축 파일을 백업 디렉토리에 저장하고 싶습니다. 어떻게하면 되나요?


"일반적인 bash 도구"-bash에 내장 된 기능 만 사용한다는 의미입니까 (즉, bash man 페이지에서 찾을 수있는 것),보다 일반적으로 bash 쉘 스크립트에 추가 할 수있는 명령 줄 도구를 의미합니까? ?
Doug Harris

@Doug Harris-어느 쪽이든 전화를 걸 mail거나 다른 방식으로 첨부 파일을 저장할 수 있다면 괜찮습니다. :)
warren

답변:


29

이식성을 목표로하는 경우 mail(1)및의 여러 버전이 mailx(1)있습니다. POSIX mailx명령이 있지만 요구 사항이 거의 없습니다. 그리고 어쨌든 첨부 파일을 구문 분석하는 구현은 없습니다.

mpack 패키지 가있을 수 있습니다 . 이 munpack명령은 MIME 메시지의 모든 부분을 별도의 파일로 저장 한 다음 흥미로운 부분을 저장하고 나머지를 정리하기 만하면됩니다.

metamail있습니다 . 의 등가 munpackIS metamail -wy.


또한 munpack사용할 때 이메일의 텍스트 MIME 부분을 추출 하려면 '-t'옵션을 사용하십시오.munpack -t email_file
Pierz

에 대한 정보를 주셔서 감사합니다 metamail. 이 질문에 대해 좀 도와 주 시겠습니까?
george

13

이 목적에 가장 적합한 프로그램은 ripMIME입니다.

텍스트와 모든 첨부 파일을 추출합니다.

https://pldaniels.com/ripmime/

GitHub : inflex / ripMIME


4
sudo apt install ripmime 그래도 작동합니다. linux.die.net/man/1/ripmime 도 참조하십시오 . 이 프로그램을 사용합니다. libc6을 제외하고는 종속성이 없으며 훌륭하게 작동합니다.
unhammer

우분투에서는 좋은 물건, 메타 메일 및 munpack을 사용할 수 없지만 ripmime은 예상대로 정확하게 작동합니다.
Diego

2
  • 가능

  • 이것은 HOW입니다 (자료는 여기에서 )

파일이 포함 된 디렉토리 찾기 | 파일을 읽는 동안; 해야 할 것

tempdir을 작성하고 거기에 파일을 복사하십시오.

파일에서 munpack을 실행하고 다른 곳에서 첨부 파일을 복사하십시오.

tempdir (내용) 파괴

끝난


누군가 내가 Perl 스크립트를 여기에 붙여 넣기를 원한다면 코멘트를 남겨주세요
subanki

1
당신이 너무 친절한다면 (분명히 당신이 그것을 발견 한 곳의 귀속을 떠나십시오 :))
warren

1
그냥 스크립트를 읽으십시오 ... 그것은 heckuva 많은 펄입니다!
워렌

그래서 당신은 내가 내 대답에 그것을 포함시키기를 원한다고 확신합니다. 매우 길어질 것입니다.
subanki

여기에 붙여 넣지 마십시오. 원본 소스에서 복사하는
것이이
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.