我想编写 shell 脚本,它可以从 curl
命令输出中打印表格,我的curl 命令输出是
<table border='2'><tr><td>OSS Databse connectivity status </td><td> STATUS_OK</td></tr><tr><td>SharedMemCache connectivity status </td><td>STATUS_OK</td></tr><tr><td>OPX connectivity status </td><td>STATUS_OK</td></tr><tr><td>OMS connectivity status </td><td> STATUS_OK</td></tr><tr><td>Number of thread live </td><td>109</td></tr><tr><td>Number of thread waiting </td><td>34</td></tr><tr><td>Current state of Thread </td><td> RUNNABLE</td></tr><tr><td>OSS database latency </td><td>10 ms</td></tr><tr><td>OPX API latency </td><td>55 ms</td></tr><tr><td>OMS API latency </td><td>386 ms</td></tr><tr><td>Number of requests successfully processed in last 5 minutes : </td><td>0</td></tr></table>
我想将此输出排列在下表中
OSS Databse connectivity status STATUS_OK
SharedMemCache connectivity status STATUS_OK
OPX connectivity status STATUS_OK
OMS connectivity status STATUS_OK
Number of thread live 129
Number of thread waiting 39
Current state of Thread RUNNABLE
OSS database latency 9 ms
OPX API latency 2297 ms
OMS API latency 342 ms
Number of requests successfully processed in last 5 minutes : 0
请帮助我。
每次我使用curl
点击URL
时,状态都会改变
最佳答案
这是使用 gnu-awk
的另一种方法:
$ awk 'NR>1&&NF{++cnt;printf "%s%s",$0,ORS=cnt%2?" ":"\n"}' RS='</?t[rd]>|</?table>' file
OSS Databse connectivity status STATUS_OK
SharedMemCache connectivity status STATUS_OK
OPX connectivity status STATUS_OK
OMS connectivity status STATUS_OK
Number of thread live 109
Number of thread waiting 34
Current state of Thread RUNNABLE
OSS database latency 10 ms
OPX API latency 55 ms
OMS API latency 386 ms
Number of requests successfully processed in last 5 minutes : 0
关于bash - 如何编写 shell 脚本从curl命令输出中打印表格格式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22551176/