当前位置: 技术问答>linux和unix
c++如何逐行得到shell命令的输出
来源: 互联网 发布时间:2016-09-01
本文导语: 各位好,我现在需要完成这样一个功能: linux下,C++。对一些列文件进行压缩,并且实时显示压缩的进度,由C++实现。 我现在是根据文件的大小来对压缩进度进行判断,通过系统调用执行shell命令可以实现,可以得到...
各位好,我现在需要完成这样一个功能:
linux下,C++。对一些列文件进行压缩,并且实时显示压缩的进度,由C++实现。
我现在是根据文件的大小来对压缩进度进行判断,通过系统调用执行shell命令可以实现,可以得到一系列百分比的数值,这些数值是shell命令的输出,数值如下:
3%
7%
11%
24%
37%
41%
45%
49%
62%
66%
70%
73%
86%
90%
94%
98%
在C++程序中我需要使用这些数值,请问我如何能够逐行得到这些是数值?请指教,谢谢
linux下,C++。对一些列文件进行压缩,并且实时显示压缩的进度,由C++实现。
我现在是根据文件的大小来对压缩进度进行判断,通过系统调用执行shell命令可以实现,可以得到一系列百分比的数值,这些数值是shell命令的输出,数值如下:
3%
7%
11%
24%
37%
41%
45%
49%
62%
66%
70%
73%
86%
90%
94%
98%
在C++程序中我需要使用这些数值,请问我如何能够逐行得到这些是数值?请指教,谢谢
|
参照popen
我昨天刚刚试验了一个
我昨天刚刚试验了一个
|
FILE *fp = popen("你的shell命令");
char *str = fgets(fp);
char *str = fgets(fp);
|
一般用popen
|
1.SHELL命令输出到文件
2.C++读文件
可能是个循环过程
2.C++读文件
可能是个循环过程