ifconfig | grep 'inet'
在通过终端执行时正在工作。但不是通过QProcess
我的示例代码是
QProcess p1;
p1.start("ifconfig | grep 'inet'");
p1.waitForFinished();
QString output(p1.readAllStandardOutput());
textEdit->setText(output);
textedit上没有显示任何内容。
但是,当我在qprocess的开头只使用ifconfig
时,输出就会显示在文本编辑上。在构造命令ifconfig | grep 'inet'
时,我是否遗漏了什么技巧,比如对'
使用\'
,对|
使用\|
?对于特殊字符?但我也试过了:
发布于 2012-05-22 19:58:51
QProcess
对象不会自动为您提供完整的shell语法:您不能使用管道。使用shell来执行此操作:
p1.start("/bin/sh -c \"ifconfig | grep inet\"");
发布于 2012-05-22 20:01:34
https://stackoverflow.com/questions/10701504
复制相似问题