# Please help in populating output in table using shell scripting

**URL:** https://community.unix.com/t/please-help-in-populating-output-in-table-using-shell-scripting/350565
**Category:** Shell Programming and Scripting
**Created:** [February 20, 2015, 5:23am UTC](https://community.unix.com/t/please-help-in-populating-output-in-table-using-shell-scripting/350565 "2015-02-20T05:23:21Z")
**Posts on this page:** 6
**Page:** 1

<div class="post-metadata">

### Author: ![ankit.mca.aaidu](https://community.unix.com/user_avatar/community.unix.com/ankit.mca.aaidu/32/9324_2.png) [@ankit.mca.aaidu](https://community.unix.com/u/ankit.mca.aaidu)
#### Post date: [February 20, 2015, 5:23am UTC](https://community.unix.com/t/please-help-in-populating-output-in-table-using-shell-scripting/350565/1 "2015-02-20T05:23:21Z")

</div>

Below is my code where i tried using table tag to print out put in table but its not working

```nohighlight
#!/bin/ksh

#[[-f ./.profile]] && . ./.profile 2>/dev/null

if test -f '.profile'; then . ./.profile; fi;

#. .profile

LOG_DIR=/app/rpx/jobs/scripts/just/logs
  sendEmail()
    {
        pzCType="$1"; pzTitle="$2"; pzMsg="$3"; pzFrom="$4"; pzTo="$5"; pzFiles="$6"; pzReplyTo="$7"
        (
          echo "From: $pzFrom\nTo: $pzTo\nSubject: $pzTitle${pzReplyTo:+\nReply-To: $pzReplyTo}"

              [[-n "$pzCType"]] && echo "Content-Type: $pzCType"

              echo
               echo "$pzMsg"
                  [[-n "$pzFiles"]] &&
                  echo &&
                  for pzFile in $pzFiles
                  do
                    [[-f "$pzFile"]] && uuencode "$pzFile" "$pzFile"
                  done

                ) | mail "$pzTo"
          }

## all pending subscriber .

pending=`sqlplus -s pag_app/abcdef@prpx1-vip.unix.gsm1900.org:7779/prpx.unix.gsm1900.org <<EOF
set feedback off;
set heading off;
set trimspool on;
set pagesize 0;
SET LINESIZE 180;

select '<tr><td>'||msisdn||'</td><td>'||status_changed_time||'</td><td>'||rate_plan_id||'</td><td>'||status||'</td></tr>' from sub
scriber where status = 'P' and status_changed_time < sysdate order by status_changed_time desc;
EOF`

activating=`sqlplus -s pag_app/abcdef@prpx1-vip.unix.gsm1900.org:7779/prpx.unix.gsm1900.org <<EOF
set feedback off;
set heading off;
set trimspool on;
set pagesize 0;
SET LINESIZE 180;

select '<tr><td>'||msisdn||'</td><td>'||status_changed_time||'</td><td>'||rate_plan_id||'</td><td>'||status||'</td></tr>' from sub
scriber where status = 'I' and status_changed_time < sysdate order by status_changed_time desc;
EOF`

final="Pending
    <table><tr><td>Msisdn </td><td> Date </td><td> RP Status </td></tr>
    $pending
    </table>
    Activating
        <table> <tr><td>Msisdn </td><td> Date </td><td> RP Status </td></tr>
        $activating
        </table>"
sendEmail '' "Pending_Activating" "$final" 'ankit.gupta92@gmail.com' 'balaji.k@gmail.com' " " ' '
exit 0;

```

---------- Post updated at 05:23 AM ---------- Previous update was at 05:22 AM ----------

Below is the output of above

```nohighlight
Pending
    <table><tr><td>Msisdn </td><td> Date </td><td> RP Status </td></tr>
    <tr><td>15204503281</td><td>19-FEB-15</td><td>183</td><td>P</td></tr>
<tr><td>19155404218</td><td>19-FEB-15</td><td>183</td><td>P</td></tr>
<tr><td>18329976221</td><td>19-FEB-15</td><td>179</td><td>P</td></tr>
<tr><td>16127078234</td><td>19-FEB-15</td><td>183</td><td>P</td></tr>
<tr><td>15208738121</td><td>19-FEB-15</td><td>173</td><td>P</td></tr>
<tr><td>14016880957</td><td>19-FEB-15</td><td>707</td><td>P</td></tr>
<tr><td>12525487753</td><td>19-FEB-15</td><td>173</td><td>P</td></tr>
<tr><td>12566400680</td><td>19-FEB-15</td><td>717</td><td>P</td></tr>
    </table>
    Activating
	<table> <tr><td>Msisdn </td><td> Date </td><td> RP Status </td></tr>
	</table>
	<tr><td>17027857667</td><td>19-FEB-15</td><td>156</td><td>I</td></tr>
<tr><td>12068591961</td><td>15-FEB-15</td><td>176</td><td>I</td></tr>
<tr><td>12064460516</td><td>15-FEB-15</td><td>176</td><td>I</td></tr>
<tr><td>19544713197</td><td>31-JAN-15</td><td>156</td><td>I</td></tr>

```

---

<div class="post-metadata">

### Author: ![Skrynesaver](https://community.unix.com/user_avatar/community.unix.com/skrynesaver/32/14143_2.png) [@Skrynesaver](https://community.unix.com/u/Skrynesaver)
#### Post date: [February 20, 2015, 8:58am UTC](https://community.unix.com/t/please-help-in-populating-output-in-table-using-shell-scripting/350565/2 "2015-02-20T08:58:48Z")

</div>

Did you know that SQLPlus supports html markup ?

```nohighlight
set markup html on

```

---

<div class="post-metadata">

### Author: ![ankit.mca.aaidu](https://community.unix.com/user_avatar/community.unix.com/ankit.mca.aaidu/32/9324_2.png) [@ankit.mca.aaidu](https://community.unix.com/u/ankit.mca.aaidu)
#### Post date: [February 21, 2015, 6:45am UTC](https://community.unix.com/t/please-help-in-populating-output-in-table-using-shell-scripting/350565/3 "2015-02-21T06:45:15Z")

</div>

I tried set markup html on, still its not working

```nohighlight
#!/bin/ksh

#[[-f ./.profile]] && . ./.profile 2>/dev/null

if test -f '.profile'; then . ./.profile; fi;

#. .profile

LOG_DIR=/app/rpx/jobs/scripts/just/logs
  sendEmail()
    {
        pzCType="$1"; pzTitle="$2"; pzMsg="$3"; pzFrom="$4"; pzTo="$5"; pzFiles="$6"; pzReplyTo="$7"
        (
          echo "From: $pzFrom\nTo: $pzTo\nSubject: $pzTitle${pzReplyTo:+\nReply-To: $pzReplyTo}"

              [[-n "$pzCType"]] && echo "Content-Type: $pzCType"

              echo
               echo "$pzMsg"
                  [[-n "$pzFiles"]] &&
                  echo &&
                  for pzFile in $pzFiles
                  do
                    [[-f "$pzFile"]] && uuencode "$pzFile" "$pzFile"
                  done

                ) | mail "$pzTo"
          }

## all pending subscriber .

pending=`sqlplus -s pag_app/abcdef@prpx1-vip.unix.gsm1900.org:7779/prpx.unix.gsm1900.org <<EOF
set feedback off;
set markup html on;
set heading off;
set trimspool on;
set pagesize 0;
SET LINESIZE 180;

select '<tr><td>'||msisdn||'</td><td>'||status_changed_time||'</td><td>'||rate_plan_id||'</td><td>'||status||'</td></tr>' from sub
scriber where status = 'P' and status_changed_time < sysdate order by status_changed_time desc;
EOF`

activating=`sqlplus -s pag_app/abcdef@prpx1-vip.unix.gsm1900.org:7779/prpx.unix.gsm1900.org <<EOF
set feedback off;
set markup html on;
set heading off;
set trimspool on;
set pagesize 0;
SET LINESIZE 180;

select '<tr><td>'||msisdn||'</td><td>'||status_changed_time||'</td><td>'||rate_plan_id||'</td><td>'||status||'</td></tr>' from sub
scriber where status = 'I' and status_changed_time < sysdate order by status_changed_time desc;
EOF`

final="Pending
    <table><tr><td>Msisdn </td><td> Date </td><td> RP Status </td></tr>
    $pending
    </table>
    Activating
        <table> <tr><td>Msisdn </td><td> Date </td><td> RP Status </td></tr>
        $activating
        </table>"
sendEmail '' "Pending_Activating" "$final" 'ankit.gupta92@gmail.com' 'balaji.k@gmail.com' " " ' '
exit 0;

```

Output is as below

```nohighlight
Pending
    <table><tr><td>Msisdn </td><td> Date </td><td> RP Status </td></tr>
    <p>
<table border='1' width='90%' align='center' summary='Script output'> <tr> <td> <tr><td>12198057608</td><td>21-FEB-15</td><td>173</td><td>P</td></tr>
</td>
</tr>
</table>
<p>
    </table>
    Activating
	<table> <tr><td>Msisdn </td><td> Date </td><td> RP Status </td></tr>
	<p>
<table border='1' width='90%' align='center' summary='Script output'> <tr> <td> <tr><td>19175889670</td><td>21-FEB-15</td><td>183</td><td>I</td></tr>
</td>
</tr>
<tr>
<td>
<tr><td>17027857667</td><td>19-FEB-15</td><td>156</td><td>I</td></tr>
</td>
</tr>
<tr>
<td>
<tr><td>12068591961</td><td>15-FEB-15</td><td>176</td><td>I</td></tr>
</td>
</tr>
<tr>
<td>
<tr><td>12064460516</td><td>15-FEB-15</td><td>176</td><td>I</td></tr>
</td>
</tr>
<tr>
<td>
<tr><td>19544713197</td><td>31-JAN-15</td><td>156</td><td>I</td></tr>
</td>
</tr>
</table>
<p>
	</table>

```

---

<div class="post-metadata">

### Author: ![Skrynesaver](https://community.unix.com/user_avatar/community.unix.com/skrynesaver/32/14143_2.png) [@Skrynesaver](https://community.unix.com/u/Skrynesaver)
#### Post date: [February 22, 2015, 10:21am UTC](https://community.unix.com/t/please-help-in-populating-output-in-table-using-shell-scripting/350565/4 "2015-02-22T10:21:58Z")

</div>

I think you misunderstood what I was suggesting...

try this:

```nohighlight
activating=`sqlplus -s user/passwd@host <<EOF 
set feedback off; 
set markup html on; 
set trimspool on; 
set pagesize 0; 
SET LINESIZE 180;  
select  
    msisdn, status_changed_time as date,rate_plan_id as RP ,status 
  from subscriber
  where status = 'I' 
    and status_changed_time < sysdate 
  order by status_changed_time desc; 
EOF`

```

and use the resulting output as the activating table

---

<div class="post-metadata">

### Author: ![ankit.mca.aaidu](https://community.unix.com/user_avatar/community.unix.com/ankit.mca.aaidu/32/9324_2.png) [@ankit.mca.aaidu](https://community.unix.com/u/ankit.mca.aaidu)
#### Post date: [February 23, 2015, 3:16am UTC](https://community.unix.com/t/please-help-in-populating-output-in-table-using-shell-scripting/350565/5 "2015-02-23T03:16:04Z")

</div>

```plaintext
#!/bin/ksh

#[[-f ./.profile]] && . ./.profile 2>/dev/null

if test -f '.profile'; then . ./.profile; fi;

#. .profile

LOG_DIR=/app/rpx/jobs/scripts/just/logs
  sendEmail()
    {
        pzCType="$1"; pzTitle="$2"; pzMsg="$3"; pzFrom="$4"; pzTo="$5"; pzFiles="$6"; pzReplyTo="$7"
        (
          echo "From: $pzFrom\nTo: $pzTo\nSubject: $pzTitle${pzReplyTo:+\nReply-To: $pzReplyTo}"

              [[-n "$pzCType"]] && echo "Content-Type: $pzCType"

              echo
               echo "$pzMsg"
                  [[-n "$pzFiles"]] &&
                  echo &&
                  for pzFile in $pzFiles
                  do
                    [[-f "$pzFile"]] && uuencode "$pzFile" "$pzFile"
                  done

                ) | mail "$pzTo"
          }

## all pending subscriber .

pending=`sqlplus -s pag_app/pass@prpx1-vip.unix.gsm1900.org:7779/prpx.unix.gsm1900.org <<EOF
set feedback off;
set markup html on;
set trimspool on;
set pagesize 0;
SET LINESIZE 180;

select msisdn, status_changed_time, rate_plan_id, status from subscriber where status = 'P' and status_changed_time < sysdate orde
r by status_changed_time desc;
EOF`

activating=`sqlplus -s pag_app/pass@prpx1-vip.unix.gsm1900.org:7779/prpx.unix.gsm1900.org <<EOF
set feedback off;
set markup html on;
set trimspool on;
set pagesize 0;
SET LINESIZE 180;

select msisdn, status_changed_time, rate_plan_id, status from subscriber where status = 'I' and status_changed_time < sysdate orde
r by status_changed_time desc;
EOF`

final="Pending
Msisdn Date RP Status
$pending
Activating
Msisdn Date RP Status
$activating"

sendEmail '' "Pending_Activating" "$final" 'ankit.gupta92@gmail.com' 'ankit.gupta92@gmail.com' " " ' '

```

When i tried as above, it just giving me tr, td tags

as below

> [@](#):
>
> Pending  
> Msisdn Date RP Status  
> \<p\>  
> \<table border='1' width='90%' align='center' summary='Script output'\> \<tr\> \<td\>  
> 16266939061  
> \</td\>  
> \<td\>  
> 23-FEB-15  
> \</td\>  
> \<td align="right"\>  
> 707  
> \</td\>  
> \<td\>  
> P  
> \</td\>  
> \</tr\>  
> \<tr\>  
> \<td\>  
> 19256396306  
> \</td\>  
> \<td\>  
> 23-FEB-15  
> \</td\>  
> \<td align="right"\>  
> 717  
> \</td\>  
> \<td\>  
> P  
> \</td\>  
> \</tr\>  
> \<tr\>  
> \<td\>  
> 13108173908  
> \</td\>  
> \<td\>

---

<div class="post-metadata">

### Author: ![RudiC](https://community.unix.com/letter_avatar/rudic/32/5_5575768a8748004e209b776fc1b2916d.png) [@RudiC](https://community.unix.com/u/RudiC)
#### Post date: [February 23, 2015, 3:49am UTC](https://community.unix.com/t/please-help-in-populating-output-in-table-using-shell-scripting/350565/6 "2015-02-23T03:49:43Z")

</div>

Looks an HTML page with a perfect table to me, once it's enclosed in \<html\> tags...

---------- Post updated at 09:49 ---------- Previous update was at 09:46 ----------

Why don't you leave the entire text creation to your DB system with markup html on, to be on the safe side?
