bash 스크립트에서 이메일 첨부 파일을 인코딩하기 위해 uuencode보다 더 나은 옵션은 무엇입니까?

bash 스크립트에서 이메일 첨부 파일을 인코딩하기 위해 uuencode보다 더 나은 옵션은 무엇입니까?

나는 언급하고있다내 원래 게시물$2 $3거기에서 등과 관련된 매개변수 배치에 대해 질문 했는데 , 결국 ${@:2}누군가 이메일 첨부 파일을 인코딩하는 더 좋은 방법이 있다고 언급했습니다.

한번 uname -or알아낸 적이 있습니다 2.6.32-400.26.3.el5uek GNU/Linux.

나는 bash 스크립트에서 이 명령을 사용하여 이메일과 다른 여러 스크립트에 파일을 첨부합니다. 하지만 우리 기계 중 일부는 이를 지원하지도 않습니다 uuencode. 이메일에 파일을 첨부하는 데 uuencode보다 더 나은 옵션이 있을까요?

답변1

첨부 파일을 MIME으로 보내기 위해 mpack을 사용하는 것을 선호합니다

좋다:

mpack -s "message" file [email protected]

이름

mpack - MIME 형식으로 파일 압축

mpack [ -s 테마] [ -d 설명 파일] [ -m 최대 크기] [ -c 콘텐츠 유형] 파일 주소... mpack [ -s 테마] [ -d 설명 파일] [ -m 최대 크기] [ -c 콘텐츠 유형] -o 출력 파일 mpack [-s 주제] [-d 설명 파일] [-m 최대 크기] [-c 콘텐츠 유형] -n 뉴스그룹 파일 설명

mpack 프로그램은 지정된 파일을 하나 이상의 MIME 메시지로 인코딩합니다. 결과 메시지는 한 명 이상의 수신자에게 메일로 전송되거나, 지정된 파일 또는 파일 세트에 기록되거나, 일련의 뉴스 그룹에 게시됩니다.

답변2

아시다시피 다음은 텍스트 파일이나 바이너리 파일에서 작동하는 것으로 나타났습니다.

 mailx -s SUBJECT -a FILE1 -a FILE2 ... USERNAME

기본적으로 MIME 인코딩을 자동으로 수행하며 심지어 M$ Outlook도 이러한 메시지에 대해 올바른 작업을 수행합니다.

답변3

가 없으면 uuencodeperl해킹은 거의 동일한 작업을 수행합니다.

신용은 간다펄 몽크스 웹사이트

perl -ple"BEGIN{ $/=\45} $_ = pack 'u', $_" file

답변4

7z, zip, tar.wz 또는 유사한 명령을 사용하여 압축 파일 목록을 얻을 수 있습니다.

그런 다음 압축된 파일 목록을 16진수로 변환할 수 있습니다. od hd 또는 xxd를 사용하십시오.

$ xxd -p compressedfile.7z > ToBeMailedFile

이메일 첨부 파일로 파일을 보냅니다.

다시 파일로 변환:

$ xxd -p -r ToBeMailedFile > compressedfile.7z

파일 목록으로 파일을 확장합니다.

HEX가 허용된 모든 웹 문자 제한을 통과하면 파일이 통과됩니다.
파일 목록을 보내기 전에 압축하기 때문에 크기가 늘어납니다.
압축된 파일도 암호화할 수 있습니다. 데이터를 처리하는 데 여러 가지 도구를 사용할 수 있습니다. HEX에서 BIN으로의 변환에만 xxd가 필요합니다. 따라서 도구의 자유로움.

관련 정보