为什么子进程未显示命令的完整输出?
我的命令输出采用以下格式:
DATABASE_NAME: TSMDB1
TOT_FILE_SYSTEM_MB: 1536000
USED_DB_SPACE_MB: 1301095
FREE_SPACE_MB: 213555
TOTAL_PAGES: 62582620
USABLE_PAGES: 62574860
USED_PAGES: 61566280
FREE_PAGES: 1008580
BUFF_HIT_RATIO: 92.6
TOTAL_BUFF_REQ: 1233581268360
SORT_OVERFLOW: 0
PKG_HIT_RATIO: 98.2
LAST_REORG: 2020-04-26 14:33:55.000000
FULL_DEV_CLASS: LTO4_CLASS1
NUM_BACKUP_INCR: 0
LAST_BACKUP_DATE: 2020-04-27 07:00:11.000000
PHYSICAL_VOLUMES: 10
NUM_BACKUP_STREAMS: 3
COMPRESS_DB_BACKUPS: No
PROTECT_MASTER_KEY: No
带有子过程
proc = subprocess.Popen(command, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
output, error = proc.communicate()
我只得到一部分输出,类似于下面的内容。
TSMDB1
1536000
1301095
213555
62582620
62574860
62574860
1008580
92.6
1233581268360
0
98.2
2020-04-26 14:33:55.000000
LTO4_CLASS1
0
2020-04-27 07:00:11.000000
10
3
No
No
我正在尝试将其读取为字符串,但是仍然不明白为什么命令的第一部分丢失了?我正在使用Python 2.7在RHEL V7服务器上运行此程序。