从C 程序传递命令到终端的问题

Problem with passing command from C++ program to terminal

本文关键字:终端 问题 命令 程序      更新时间:2023-10-16

当我在终端运行此命令时,它可以完美地工作

df | awk '/ /$/{print "HDD "$5}'

输出:

HDD 52%

我想构建一个C 程序以将此命令行传递到终端:

代码:

#include<stdlib.h>
int main()
{
    system("df | awk '/ /$/{print "HDD "$5}'");
}

但是当我运行它时,我会出现一个错误:

awk: line 1: runaway regular expression /{print "HD ...

我该如何修复?

尝试bellow:

#include<stdlib.h>
int main()
{
    system("df | awk '/ \/$/{print "HDD "$5}'");
}

如果要在C 字符串中使用BackSlash,则应添加\而不是