Bash에 HTML 청크를 삽입하는 가장 좋은 방법

Bash에 HTML 청크를 삽입하는 가장 좋은 방법

저는 서버에 대한 데이터를 수집하고 이를 멋진 HTML 이메일 보고서로 형식화하는 스크립트를 작성해 왔습니다. 지금까지 HTML 템플릿의 값을 대체하기 위해 sed를 사용해왔는데, 대부분 괜찮았는데, 변수를 기반으로 여러 줄의 HTML 블록을 임의의 수만큼 삽입해야 하는 상황에 부딪혔습니다. sed가 여러 줄을 잘 처리하지 못하는 것 같아서 어떻게 해야 할지 잘 모르겠습니다. 어쩌면 내가 고려하지 않은 perl이나 awk 방법이 있을 수도 있습니다.

다음은 기존 템플릿의 파일 수에 따라 기존 템플릿에 0-n 테이블 블록을 삽입해야 하는 예입니다.

$files의 f에 대해

  <tr class="details">
        <td> f.$DATE </td>
        <td> f.$APPLIANCE </td>
        <td> f.$HOST </td>
        <td> f.$MDL </td>
  </tr>

등.

감사해요!

답변1

여기에서 문서를 사용하세요.

for f in $files; do
    cat <<END_HTML
  <tr class="details">
        <td> f.$DATE </td>
        <td> f.$APPLIANCE </td>
        <td> f.$HOST </td>
        <td> f.$MDL </td>
  </tr>
END_HTML
done

그러면 단어가 있는 만큼 많은 청크가 출력 $files되고 명명된 변수가 해당 값으로 확장됩니다.

답변2

"스니펫"을 사용해 볼 수 있습니다. 많은 텍스트 편집기나 IDE가 이 기능을 지원합니다. 코딩 블록에 대한 일부 템플릿을 사용자 정의하고 이름을 지정할 수 있습니다. 그런 다음 이름과 탭을 입력하여 코딩 블록으로 확장할 수 있습니다. 또한 Tab 키를 사용하여 자리 표시자를 편집할 수 있습니다.

관련 정보