我想用execl或system(或其他命令)从“/ sbin /”执行Linux shell命令,并隐藏其输出。
我正在使用“fork”来获得子进程...
就像我进入......
service "servicename" restart
我会看到“重启xyz [OK]”的输出。相反,我只是想要以静默方式执行命令并丢弃其输出而不是在我的控制台应用程序中显示。
答案 0 :(得分:2)
您可以将此附加到您的命令: “> / dev / null 2>& 1”
所以你的命令变为: service [servicename] restart> / dev / null 2>& 1
这样做是将stderr重定向到stdout(2>& 1),并将stdout重定向到/ dev / null(> / dev / null)
答案 1 :(得分:1)
将输出重定向到/dev/null
例如,
service smb restart 1> /dev/null
service smb restart 2> /dev/null
其中1
和2
代表stdout
和stderr