直接贴代码:
#include
#include
#include
#include
#include
extern int errno; //Author:HuangJiaJia int main(int argc, const char *argv[]) { if(argc < 3) { fprintf(stdout, "USE %s [srcfilename] [desfilename]!\n", argv[0]); return 0; } close(STDIN_FILENO); //关闭输入流 close(STDOUT_FILENO); //关闭输出流 int fpr = open(argv[1], O_RDONLY); int fpw = open(argv[2], O_CREAT | O_WRONLY); if(-1 == fpr || -1 == fpw) { fprintf(stdout, "Open Error: Err[%d] ErrStr[%s]!\n", errno, strerror(errno)); return 0; } dup2(fpr, STDIN_FILENO); //重定向输入流 dup2(fpw, STDOUT_FILENO); //重定向输出流 int nValue; while((nValue = getchar()) != EOF) //从文件中读取数据 { putchar(nValue); //向文件中写入数据 } return 0; }