Linux에서 .xls 파일 형식을 지정하는 Perl 스크립트

Linux에서 .xls 파일 형식을 지정하는 Perl 스크립트

내가 가진 것은 Linux 명령뿐입니다(명령 뒤에 무엇이 오는지, 스크립트 또는 명령의 출력 형식이 무엇인지 모릅니다). 따라서 내가 할 수 있는 것은 데이터를 [표 형식으로, 보이지 않는 열로 가져오는 것뿐입니다. 라인], 리눅스에서 꺼내어 검토를 위해 사람들에게 보냅니다.

명령을 실행하면 다른 유형의 파일 확장자(.txt/.csv/.xls)로 입력하더라도 결과 출력이 정렬된 열과 함께 콘솔 화면에 보기 좋게 형식화됩니다. 둘 다 Linux 터미널에서 잘 작동합니다.

해당 명령 | mail -s '통계'[이메일 보호됨]

위: 출력을 이메일의 메시지 본문으로 인쇄하기
아래: 출력을 파일로 리디렉션하고 이메일의 첨부 파일로 보내기

thatCommand > stat.xls
uuencode stat.xls table.xls \mail -s "통계"[이메일 보호됨]

그러다가 이 문제에 부딪혔습니다. 첫 번째 명령줄을 실행한 후 메시지 본문의 테이블은 다음과 같았습니다.

학생 이름 ID 과목 A (%) 과목 B (%)
Aaron Frank 7892 89 100
Benjamin Ayres 8892 78 90

열별로 정렬하는 방법은 다음과 같습니다.

Student Name       ID   SubjectA(%) SubjectB(%)
Aaron Frank       7892      89         100
Benjamin Ayres    8892      78          90

그래서 첨부 파일을 사용하여 두 번째 명령줄을 시도했습니다. 메일에서 이러한 다양한 유형의 파일 확장자를 가진 첨부 파일을 받은 후 Windows에서 해당 파일을 저장하고 엽니다. (제 컴퓨터에서는 기본적으로 csv, xls는 엑셀로 열리고, txt는 메모장으로 열립니다)

출력은 다른 열에 있어야
하지만(내보내기 전 Linux의 테이블이었습니다) 모든 데이터는 첫 번째 열에 있으므로 Excel 애플리케이션에서는 지저분해 보입니다. [메모장에서도 지저분해 보입니다.]

아래 이미지는 나의 최종 목표이며, 서로 다른 열의 데이터 값(잘 정렬됨)

어떤 모습이어야 하는지, 내가 기대하는 모습은 어떤 모습이어야 하는지

지금 보이는 대로 데이터는 A열에만 있습니다. 지금은 어때 보여?

Perl 스크립트가 도움이 되나요? 첨부 파일을 받으면 올바른 형식의 출력을 얻을 수 있습니까? Linux에서는 Excel 파일 끝에 일부 정보를 추가해야 하기 때문에 신경쓰지 않습니다. (아직 어떻게 해야 할지 모르겠습니다.) 이제 가장 큰 관심사는 포맷 방법입니다. :)

이것은협회앞으로 어떤 조치를 취할 것인지 물어보세요.

답변1

첫째, Perl 자체가 이메일을 보낼 수 있습니다.여기에서 예를 참조하세요., 더 쉽고 오류가 발생하기 쉽습니다.

어쨌든 귀하의 경우에는 HTML 이메일 본문이 작동해야 합니다.

<table>
  <tbody>
    <tr>
      <td>Adam</td>
      <td>50</td>
    </tr>
  </tbody>
</table>

HTML 이메일을 보내려면 헤더를 설정해야 합니다 content-type.여기에서 예를 참조하세요.

관련 정보