虽然路径“/ home / abhijit / Documents / LINUX / editor /”下有多个文件,但是我没有得到“temp”(应该从编辑器文件夹中复制所有文件)文件夹中的所需输出而输出即将到来错误为:“cp:无法统计'/ home / abhijit / Documents / LINUX / editor / *':没有这样的文件或目录”。
#include <stdio.h>
#include <unistd.h>
int main( void )
{
char* argv1[10] = { "cp", "-rf", "/home/abhijit/Documents/LINUX/editor/*", "/home/abhijit/Documents/LINUX/temp", 0 };
execvp( argv1[0], argv1 );
}
但如果我说如下,它可以正常工作。
char* argv1[MAX_ARGS] = { "cp", "-rf", "/home/abhijit/Documents/LINUX/editor/", "/home/abhijit/Documents/LINUX/temp", 0 };
答案 0 :(得分:3)
星号模式*
由 shell 扩展,而不是由cp
命令本身扩展。
如果通过shell运行cp
命令,可以通过-c
使用exec
选项调用shell或使用system
来使其工作功能而不是exec
。