Как нарисовать таблицу HTML, содержащую результат запроса SQL, и отправить на почту в скрипте Shell - PullRequest
0 голосов
/ 27 сентября 2019

Я хочу нарисовать таблицу HTML, содержащую запись запроса SQL и отправить на почту в скрипте оболочки.Вот сценарий оболочки: -

#!/usr/bin/ksh
out=$(for id in 1 2 3 4
      do
      sqlplus -s <user>/<password>@<db> <<EOF
      spool out.txt;
      select id, count(*) from <table> where id=${id};
      spool off;
      exit;
      EOF
      done)

 echo ${out} > out.txt
(uuencode out.txt out.txt)| cat out.txt| mailx -s "Before" abc@xyz.com

И я получаю вывод запроса в другом формате, а не в формате таблицы HTML.Формат таблицы должен быть таким (в таблице со строкой границы)

ID            Results
        Before      After
1          12         15
2          27         30 
3          45         52

Не могли бы вы помочь мне нарисовать таблицу HTML этой записи.

1 Ответ

1 голос
/ 27 сентября 2019

Вы можете попытаться поместить html-код после и до вашей консультации, и объединить внутри вашего sql.Как:

#!/usr/bin/ksh

#start table
echo "<table><thead><tr><th>ID</th><th>BEFORE></th><th>AFTER</th></thead><tbody><th>" > out.txt
out=$(for id in 1 2 3 4
      do
      sqlplus -s <user>/<password>@<db> <<EOF
      SET HEADING OFF FEEDBACK OFF ECHO OFF PAGESIZE 0
      spool out.txt;
      select '<td>'||ID||'</td><td>' || BEFORE || '</td><td>' || BEFORE || '</td>' from <table> where id=${id};
      spool off;
      exit;
      EOF
      done)

 echo ${out} >> out.txt

 #finish table 
 echo "</th></tbody></table> >> out.txt

(uuencode out.txt out.txt)| cat out.txt| mailx -s "Before" abc@xyz.com

* Я не проверял код

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...