当前位置: 首页 > article >正文

linux实现CP指令

实现CP指令只需要五步

1.打开Src文件(源文件)

2.读Src到Buf

3.打开Des文件(目标文件)

4.写Buf到Des

5.关闭Src和Des文件

 代码如下:

#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <stdio.h>
#include <unistd.h>
#include <string.h>
#include <stdlib.h>

int main(int argc, char **argv)
{
    int fdSrc;
    int fdDes;

    char *readBuf=NULL;

    if(argc != 3){
        printf("pararm error\n");
        exit(-1);
    }
    
    

    fdSrc = open(argv[1],O_RDWR);
    int size = lseek(fdSrc,0,SEEK_END);
    lseek(fdSrc,0,SEEK_SET);

    readBuf=(char *)malloc(sizeof(char)*size + 8);

    int n_read = read(fdSrc, readBuf, size);
    

    fdDes = open(argv[2],O_RDWR|O_CREAT|O_TRUNC,0600);
    
    int n_write = write(fdDes,readBuf,strlen(readBuf));

    
    close(fdSrc);
    close(fdDes);

    return 0;
}

 

 


http://www.kler.cn/a/18252.html

相关文章:

  • 《云原生安全攻防》-- K8s安全防护思路
  • Ubuntu20.4系统编译瑞芯微RK3568 SDK
  • 【CICD】GitLab Runner 和执行器(Executor
  • 【C++】详解RAII思想与智能指针
  • AI大模型开发架构设计(14)——基于LangChain大模型的案例架构实战
  • 11 go语言(golang) - 数据类型:结构体
  • LeetCode 2432. 处理用时最长的那个任务的员工
  • 从爆火的“哇呀挖”,思考我软件开发的人生意义何在?
  • JDK17新特性之--JDK9到JDK17 String 新增的新方法
  • 53.MDL、NCNN和 TFLite比较
  • C++Primer 第一章
  • 将数据从 Oracle 加载到 Azure 的框架
  • 68元工业级双核A7,全新T113核心板震撼上市!
  • CSA发布|《洞察2022 云上数据安全与重要事项 》
  • spring-web HandlerAdapter 源码分析
  • 记录每日LeetCode 2432.处理用时最长的那个任务的员工 Java实现
  • Feign组件的使用及开发中使用方式
  • ZC706P试验PL_DDR3内存条的步骤方法
  • 使用SaleSmartly自动化流程的 5 个原因
  • 网络基础学习:什么是网络与网络发展史
  • 接口自动化测试之HTTP协议详解(敢称全网最全)
  • AP360X 可充电多功能LED手电筒与移动照明控制ic和应用方案
  • 【SpringBoot】SpringBoot集成ElasticSearch
  • AQS底层源码解析
  • 如何利用问卷工具助力活动开展,实现高效数据收集?
  • 一起学 WebGL:绘制图片