我正在使用 Ubuntu 16.10。我想使用 execlp 将文件的内容复制到另一个文件。我有两个名为 file1(包含内容)和 file2(空)的文件。如果我在终端上给出以下命令
test@ubuntu:~/Teme$ cat file1 > file2
Run Code Online (Sandbox Code Playgroud)
一切正常,但如果我编写 C 代码并使用它:
execlp("/bin/cat","cat","file1",">","file2",NULL);
Run Code Online (Sandbox Code Playgroud)
我收到错误:
content of file1
cat: '>': No such file or directory
Run Code Online (Sandbox Code Playgroud)
我认为 execlp 正在一个一个地进行 cat 论点,所以我尝试了
execlp("/bin/cat","cat","file1 > file2",NULL);
Run Code Online (Sandbox Code Playgroud)
但后来我收到了这个错误:
cat: 'file1 > file2': No such file or directory
Run Code Online (Sandbox Code Playgroud)
如何使用 execlp / execl 将文件中的内容复制到另一个文件?