使用 Python库: PrettyTable 美化 jps 命令的输出形式
Posted 简简单单OnlineZuozuo
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用 Python库: PrettyTable 美化 jps 命令的输出形式相关的知识,希望对你有一定的参考价值。
使用 Python库: PrettyTable 美化 jps 命令的输出形式
1、说明
jps 默认的显示形式不太友好,且不带端口,所以我们使用这个库美化一下输出
2、代码
# -*- coding:utf-8 -*-
# 用于格式化 jps 的输出
import sys
from prettytable import PrettyTable
import os
def shell(cmd):
p = os.popen(cmd)
x = p.read()
p.close()
return x
def last_index_of(s):
a = s.split('/')
return a[len(a) - 1]
def get_port(s):
port = shell('lsof -ni | grep ' + arg[0] + ' | grep LISTEN | awk \\'{print $9}\\'')
ar = port.split('\\n')
for l in ar:
p = l.replace('*:', '')
if p.isdigit():
return p
return ''
# 表头
table = PrettyTable(['PID', 'Port', 'Jar Name', 'File Path'])
for line in shell('jps -l').split('\\n'):
arg = line.split(' ')
if len(arg) == 1:
table.add_row([arg[0], get_port(arg[0]), '', ''])
if len(arg) == 2:
table.add_row([arg[0], get_port(arg[0]), last_index_of(arg[1]), arg[1]])
if __name__ == '__main__':
print(table)
3、运行
以上是关于使用 Python库: PrettyTable 美化 jps 命令的输出形式的主要内容,如果未能解决你的问题,请参考以下文章
使用 Python库: PrettyTable 美化 jps 命令的输出形式
python实操案例__02—利用prettytable库模拟高铁售票系统