在c+中调用(date--set)时避免system()输出+; 我有一个用C++编写的服务器,在ExtJS中有客户机。此程序通过调用日期命令设置系统日期和时间,如下所示: system ("date --set cmd")

在c+中调用(date--set)时避免system()输出+; 我有一个用C++编写的服务器,在ExtJS中有客户机。此程序通过调用日期命令设置系统日期和时间,如下所示: system ("date --set cmd"),c++,date,C++,Date,哪个cmd是用户提供的日期字符串,但调用此命令会在设置日期后输出日期。我不想得到这个输出。如何避免这种情况?将输出重定向到/dev/null(这假设是一个类似POSIX的系统,但这相当安全,因为您的命令依赖于日期命令的GNU扩展): 如果一切顺利,这很好;如果出现问题,您将不知道。将输出重定向到/dev/null(这假定是一个类似POSIX的系统,但这是相当安全的,因为您的命令依赖于日期命令的GNU扩展): 如果一切顺利,这很好;如果有问题,您将不知道。当我单独运行服务器端代码时,它工作正常,但

哪个cmd是用户提供的日期字符串,但调用此命令会在设置日期后输出日期。我不想得到这个输出。如何避免这种情况?

将输出重定向到
/dev/null
(这假设是一个类似POSIX的系统,但这相当安全,因为您的命令依赖于
日期
命令的GNU扩展):


如果一切顺利,这很好;如果出现问题,您将不知道。

将输出重定向到
/dev/null
(这假定是一个类似POSIX的系统,但这是相当安全的,因为您的命令依赖于
日期
命令的GNU扩展):


如果一切顺利,这很好;如果有问题,您将不知道。

当我单独运行服务器端代码时,它工作正常,但当运行整个应用程序时,它不工作!奇怪…代码中是否还有其他出现的
system()
?它们在两种情况下都有效吗?如果它们不起作用,也许问题在于“环境”——也许与外壳有关。如果它们起作用,那就不是问题。设置日期需要根权限-您在这两种上下文中都有根权限吗?你确定要修改系统时钟吗?当我单独运行服务器端代码时,工作正常,但当运行整个应用程序时,工作不正常!奇怪…代码中是否还有其他出现的
system()
?它们在两种情况下都有效吗?如果它们不起作用,也许问题在于“环境”——也许与外壳有关。如果它们起作用,那就不是问题。设置日期需要根权限-您在这两种上下文中都有根权限吗?你确定要修改系统时钟吗?
system("date --set cmd >/dev/null 2>&1");