텍스트 파일의 새 줄을 HTML 파일의 태그로 바꾸기

텍스트 파일의 새 줄을 HTML 파일의 태그로 바꾸기

저는 실제로 사무실 인프라 팀을 위해 홈브류 도구 "MOM"을 만들고 있습니다. 내 도구에 "텍스트 파일이 있습니다.엄마.txt" 및 "라는 이름의 HTML 파일엄마.html" . "mom.html"의 복사본을 가져와서 이름을 지정하는 쉘 스크립트가 있습니다.momcpy.html 나는 이것을 보낸다momcpy.html이메일을 통해 내 팀 DL에 회의 보고서를 제출하세요. 여기에 내 도구와 다양한 파일의 이미지를 첨부했습니다.

팀 이메일로 "회의록"을 보내는 데 사용하는 도구:

여기에 이미지 설명을 입력하세요.

여기에 이미지 설명을 입력하세요.

이제 마지막에 제출 버튼이 있고 이를 클릭하면 html 보고서가 메일(예: 파일)로 전송됩니다."momcpy.html"

내 거"엄마.txt"파일은 다음과 같습니다.

    Saibal,Navnath,Taral,Sagar,Ankit,Prasham,Manika,Arvind,Gaurav,Abhijeet,Rohit,Madhu,Ganesh,Zahoor|
LSCRM:Abhijeet

MCRM:Arvind

TLGAPI:Bhargav

MOM:Manikaa|
Prod :
No major activity were scheduled and no issues were reported throughout the week.
Last weekend on Sunday, we performed Full bounce. We are doing so to allow any USDOTT transaction during this window while they do code-fix (they need CRM available at all times).
Coming weekend, we have ordering client Ef deployment and CK External BLM Phase 2 activity scheduled on both APH and STL.

Non-Prod:
Over the week, we released 1710 CT11 K2view to build: 220 and Env TRN3 to 1707 Build:300.
|
PROD:
We have 2Q OS Patching on DR and Production.
There was an issue of Sync reject long response time reported for NBI Market . It was run in debug mode to investigate further.
Coming weekend, the scheduled DR switchover activity got cancelled.
Coming weekend we have Weblogic phase 2 migration activity as well as weekly config build.

Non Prod:
We have 2Q OS Patching activity on QA and TRN envs.|
PROD:

WTC cleanup activity completed successfully.
No major issues reported.

NON PROD

Configuration changes on DB end for 1710 envs done.
There was an issue due to heap size on few jvms.Clients got impacted. We tried to do Rolling bounce but issue still persist. After half an hour issue got resolved itself.
|
No updates|
break|

따라서 참석자, 의제, LSCRMUpdates, MCRM 업데이트, Tlgapi 업데이트 및 기타 업데이트에서 사용자가 입력한 세부 정보를 클릭하면 텍스트 파일에 저장됩니다."엄마.txt” 위에 주어진.

이제 사용자가 입력으로 제공한 데이터의 다른 부분을 추출하기 위해 파이프 |를 구분 기호로 사용했음을 알 수 있습니다.

이제 이메일로 보내는 momcpy.html 파일은 해당 코드를 보고합니다.

<!--
To change this template, choose Tools | Templates
and open the template in the editor.
-->
<!DOCTYPE html>
<html>
    <head>
        <title>CRM Infra MOM Weekly Reports</title>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
         <link href='http://fonts.googleapis.com/css?family=Exo:700' rel='stylesheet' type='text/css'>
         <link rel="stylesheet" type="text/css" href="mom.css">
         <script src="mom.js"></script>
    </head>
    <body onLoad="xx()">
      <p class="exe1"><div id="content-wrap">
           <p class="exe1"><h1 valign="top">CRM Infra Weekly Report</h1></p>
            <br/>
          <p class="exe1"><table  align="center"  border="6" cellpadding="10" cellspacing="10">
                <tr>
                    <th height="15" style="font-size:20px;line-height:10px;" bgcolor="#808080"><label for="attendees">Attendees</label></th>
                </tr>
                <tr>
                    <td><textarea rows="10" cols="140">attendees</textarea></td>
                </tr>
                <tr>
                        <th height="12" bgcolor="#808080">Agenda:</th>
                </tr>
                <tr>
                    <td height="70" bgcolor="#FFFFFF">agenda.</td>
                </tr>
                 <tr>
                        <th height="12"  bgcolor="#808080"><label for="lscrm">LSCRM:</label></th>
                </tr>
                <tr>
                    <td height="60" bgcolor="#FFFFFF">lscrm</td>
                </tr>
                <tr>
                        <th height="12" bgcolor="#808080"><label for="mcrm">MCRM:</label></th>
                </tr>
                <tr>
                    <td height="60" bgcolor="#FFFFFF">mcrm</td>
                </tr>
                  <tr>
                        <th height="12" bgcolor="#808080"><label for="mcrm">TLGAPI:</label></th>
                </tr>
                <tr>
                    <td height="60" bgcolor="#FFFFFF">tlgapi</td>
                </tr>
                  <tr>
                        <th height="12" bgcolor="#808080"><label for="other">Other Updates:</label></th>
                </tr>
                <tr>
                    <td height="60" bgcolor="#FFFFFF">other</td>
                </tr>

            </table></p>
        </div></p>
    </body>
</html>

이 파일에는 도구 테이블과 동일한 행 및 열 구조를 가진 테이블이 있습니다. 여기에는 lscrm, mcrm, agegen, 참석자, tlgapi와 같은 다양한 변수가 여러 줄에 있으며 파이프를 구분 기호로 사용하여 이러한 변수를 mom.txt 파일에 있는 값으로 대체하고 있습니다(사용자가 값 입력). 주어진).

저는 쉘 스크립트를 사용하여 이 작업을 수행합니다.

#! /bin/bash -x
file='/home/websphe/tomcat/webapps/MOM/mom.txt'
file1='/home/websphe/tomcat/webapps/MOM/web/mom.html'
common_path='/home/websphe/tomcat/webapps/MOM/web/'
if test -s $file
   then
cp $file1 $common_path/momcpy.html
attendees=$( awk 'BEGIN { RS = "|" } NR == 1 { print }' $file )
echo "$attendees"
agenda=$( awk 'BEGIN { RS = "|" } NR == 2 { print }' $file )
echo "$agenda"
lscrm=$( awk 'BEGIN { RS = "|" } NR == 3 { print }' $file )
echo "$lscrm"
mcrm=$( awk 'BEGIN { RS = "|" } NR == 4 { print }' $file )
echo "$mcrm"
tlgapi=$( awk 'BEGIN { RS = "|" } NR == 5 { print }' $file )
echo  "$tlgapi"
other=$( awk 'BEGIN { RS = "|" } NR == 6 { print }' $file )
echo "$other"
trial=$( awk 'BEGIN { RS = "|" } NR == 7 { print }' $file )
perl -p -i -e "s#attendees#$attendees#g" $common_path/momcpy.html
perl -p -i -e "s#agenda#$agenda#g" $common_path/momcpy.html
perl -p -i -e "s#lscrm#$lscrm#g" $common_path/momcpy.html
perl -p -i -e "s#mcrm#$mcrm#g" $common_path/momcpy.html
perl -p -i -e "s#tlgapi#$tlgapi#g" $common_path/momcpy.html
perl -p -i -e "s#other#$other#g" $common_path/momcpy.html
perl -p -i -e "s#trial#$trial#g" $common_path/momcpy.html
     echo "`/bin/sh /home/websphe/tomcat/webapps/MOM/web/./mail.sh`"

             #rm $file
            # rm $common_path/momcpy.html
  else
    echo "Sorry no email sent :("
fi

~

내 현재 문제 설명:

"mom.txt" 파일의 다른 섹션과 동일한 방식으로 세부정보를 가져오고 싶습니다.LSCRM 업데이트, MCRM 업데이트등(또는 사용자가 입력한 내용을 말할 수도 있습니다). 이 텍스트 파일의 입력을 HTML 파일에 작성 중이므로
새 줄이 나타나는 위치를 HTML의 태그로 바꿔야 합니다.위에서 언급한 쉘 스크립트 노트:<br> tagHTML 파일의 모든 섹션이 아닌 텍스트 입력 섹션에만 추가하고 싶습니다 . 그렇지 않으면 매우 하향 정렬됩니다.

현재 내 스크립트에서 이것을 사용하고 있습니다.

perl -p -i -e "s#attendees#$attendees#g" $common_path/momcpy.html
perl -p -i -e "s#agenda#$agenda#g" $common_path/momcpy.html | sed -i'' 's|\n|<br>|' $common_path/momcpy.html
perl -p -i -e "s#lscrm#$lscrm#g" $common_path/momcpy.html | sed -i'' 's|\n|<br>|' $common_path/momcpy.html
perl -p -i -e "s#mcrm#$mcrm#g" $common_path/momcpy.html | sed -i'' 's|\n|<br>|' $common_path/momcpy.html
perl -p -i -e "s#tlgapi#$tlgapi#g" $common_path/momcpy.html | sed -i'' 's|\n|<br>|' $common_path/momcpy.html
perl -p -i -e "s#other#$other#g" $common_path/momcpy.html | sed -i'' 's|\n|<br>|' $common_path/momcpy.html
perl -p -i -e "s#trial#$trial#g" $common_path/momcpy.html | sed -i'' 's|$|<br>|' $common_path/momcpy.html

하지만 <br> tags내 HTML 파일의 모든 곳에 추가되고 있으며 브라우저 Chrome 또는 IE에서는 표가 매우 낮게 정렬됩니다.

답변1

간단합니다. g명령에서 플래그를 제거하면 모든 이벤트가 교체됩니다.

관련 정보