linux 程序调用system执行命令


正确使用system方法,判断返回值

int exeCmd(const char *cmd) {
        pid_t status;
    
    
        status = system(cmd);
    
        if (-1 == status)
        {
            WriteLog("system error!");
        }
        else
        {
            WriteLog("exit status value = [0x%x]\n", status);
    
            if (WIFEXITED(status))
            {
                if (0 == WEXITSTATUS(status))
                {
                    WriteLog("run CMD script successfully.\n");
                    return 0;
                }
                else
                {
                    WriteLog("run CMD=[%s] script fail, script exit code: %d\n", cmd,WEXITSTATUS(status));
                }
            }
            else
            {
                WriteLog("exit status = [%d]\n", WEXITSTATUS(status));
            }
        }
    
        return -1;

}

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM