C语言实现Linux中的CP指令

C语言实现Linux cp命令 1.分析所需功能 文件到文件(参数:两个文件名) 1.文件到文件的复制 2.文件到文件的硬链接(-l) 3.文件到文件的软链接(-s) 文件到目录(参数:一个文件名,一个目录名) 1.文件到目录的复制 2.新目录下建立文件硬链接(-l) 3.新目录下建立文件软链接(-s) 目录到目录 1.目录的递归复制(-r) 2. 功能函数的实现 文件到文件的复制copyF2F(char * src 阅读详情

Linux文件编程实现CP指令

1. C语言参数

#include <stdio.h>

int main(int argc,char **argv)
{

        printf("total params:%d\n",argc);
        printf("No.1 params is:%s\n",argv[0]);

        printf("No.2 params is:%s\n",argv[1]);
        printf("No.3 params is:%s\n",argv[2]);



        return 0;
}CLC@Embed_Learn:~$ vi test.c

total params:3
No.1 params is:./a.out
No.2 params is:src
No.3 params is:deec

2.思路:

1.打开源文件

2.将源文件的内容读取到buf

3.打开或创建目标文件

4.将读取到的数据写入目标问文件

5.关闭文件

#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 fdDec;//目标
    char *readBuf=NULL;
    if (argc != 3)//如果参数不够提示错误,退出
{
    printf("params error!\n");
    exit(-1);
}
    //打开源文件将源文件的内容读取
   fdSrc = open(argv[1],O_RDWR);
   int size = lseek(fdSrc,0,SEEK_END);
    //lseek计算文件大小
   lseek(fdSrc,0,SEEK_SET);
   readBuf = (char *)malloc(sizeof(char)*size + 8);
   
   int n_read = read(fdSrc,readBuf,1024);
	//将文件写到argv[2],不存在就创建
   fdDec = open(argv[2],O_RDWR|O_CREAT,0600);
    //内容读取到readBuf
   int n_write=write(fdDec,readBuf,strlen(readBuf));
//关闭文件
   close(fdSrc);

   close(fdDec);
        printf("\ndone");
    return 0;
}

gcc cpOrder.c -o mycp
/mycp test.c ./cpfile.c

LinuxC语言实现CP命令(edsionte.com) linux新手区:www.edsionte.com 本程序使用linux下C语言实现linux系统中常用的CP命令。本程序使用linux下C语言实现linux系统中常用的CP命令。本程序使用linux下C语言实现linux系统中常用的CP命令。本程序使用linux下C语言实现linux系统中常用的CP命令。 立即下载

相关推荐

Flutter 完整学习文档 - 从入门到精通

Widget 就像乐高积木,Flutter 中所有的东西都是 Widget。一个按钮是 Widget,一段文字是 Widget,甚至布局、边距、对齐方式也是 Widget!"万物皆 Widget"

zwjapple的专栏 2317

linux环境下使用C语言编写cp指令(copy函数)

​在编写函数前介绍一下int main() 函数的原型: argc 是Linux使用gcc编译时传的参数个数,argv 是指向指针数组(数组元素都为指针)的指针,类似于二级指针,如下图,我们一般使用第一种的表示方法,这样更有利于告诉阅读代码的人,这是一个指向指针数组的指针,而不单纯是一个指针。 cp指令的实现步骤: 打开原文件 读取原文件的内容 打开目标文件 将原文件的内容写入到目标文件中 关闭原文件和目标文件1 ​

weixin_54076783的博客 3436

深入解析uncompyle6反编译pyc文件及常见错误修复指南

本文深入解析了使用uncompyle6工具反编译Python字节码文件(.pyc)的完整流程。针对实践中最高频的KeyError和Python版本范围限制两大错误,提供了详细的修复方案与步骤指南,并分享了处理复杂反编译结果的高级技巧与安全实践,是进行代码恢复、调试与分析的重要参考。

uber9的博客 534

【C语言实现Linux cp命令】

实现Linux cp命令cp指令是用于复制文件或目录的指令,如同时指定两个以上的文件或目录,且最后的目的地是一个已经存在的目录,则它会把前面指定的所有文件或目录复制到此目录中。

weixin_53122643的博客 535

利用LTspice设计Pt100测温电路

是一种广泛使用的温度传感器,它属于(RTD, Resistance Temperature Detector)的类型,通常用于温度测量。在0°C时,的电阻值为100欧姆,且它的电阻值会随着温度的升高而升高。PT100热电阻温度阻值对应表)因此可以根据这一特性来检测出环境温度。

2301_77033628的博客 2417

保姆级教程:在Rockchip RK3588 SDK中,如何为你的新硬件板子创建第一个DTS文件

本文提供在Rockchip RK3588 SDK中为自定义硬件创建首个DTS文件的详细教程。通过分析DTS在RK3588开发中的角色、快速定位参考设计、实操步骤及调试验证方法,帮助开发者高效完成硬件板级配置,特别适合嵌入式Linux系统开发者参考。

weixin_28678831的博客 286

【Linux】C语言系统函数实现cp命令

🔥❤️cp命令是 Linux 和类 Unix 系统中常用命令,用于复制文件和目录。基本用法: 命令的基本语法是将源文件复制到目标文件 这会将 复制到 中。如果 已经存在,将会被覆盖。同时复制多个文件: 命令可以同时复制多个文件到目标目录中。 这会将 、 等文件复制到 目录中。递归复制目录:如果 命令的目标是一个目录,且使用了 或 选项, 命令将会递归地复制整个目录结构。 保留文件属性:使用 或 选项可以保留源文件的属性(包括所有者、权限、时间戳等)。 交互模式:使用 或

代码兴国 1741

Aurora8b10b光口通信实战:复位时序与IP核配置详解

本文深入解析了Aurora 8B10B协议在FPGA高速光口通信中的核心实践,重点剖析了确保链路稳定启动的关键复位时序与IP核配置细节。通过详解全双工与单工模式下的复位流程、Vivado中IP核的物理层与链路层参数设置,并结合用户逻辑设计实例,为工程师实现可靠的高速数据传输提供了清晰的实战指南。

weixin_29280219的博客 177

[linux] C语言实现在Linux中的cp命令操作

一.功能描述 在Linux中cp命令是用于文件的复制操作,其意义就是就是底层的文件的读写操作,也就是文件的io操作。 二.编程思路 利用main中的命令行参数argv让用户指定源文件与目标文件,程序中首先,利用open函数打开文件的描述符并判断其是否为-1,如果为-1则是打开错误这时候要错误退出;其次利用循环读源文件到缓冲器buff中,用rdsize接受实际读到的大小,对其进行判断是否为0作为循环条件,在写操作也要利用wrsize判断实际写的内容,最后close函数关闭文件描述符; 三.代码 #includ

Limik的博客 2687

实验记录 | 如何拆分scATAC-seq数据成为单个细胞?(1、解决barcode问题)

在师兄的帮助下,我得到了师兄筛选过的细胞的barcode的数据,那么接下来我想根据这些barcode,将来源于同一个barcode的细胞的reads提取出来,这个还是一个蛮有技术含量的事情的,因为上次我有使用过perl的脚本进行提取,最后的实验结果很糟糕,故而这件事情一直搁置到现在,没有继续去做(我的脚本的编写能力还是有待于加强,可能是刚刚喝了奶茶,和老妈弟弟聊了好多闲话,很开心,觉得在某种程度上休息够了,对于工作也是一种非常快乐和积极的状态了)。 0。前期失败尝试回顾 ...

weixin_40640700的博客 1887

BevFusion (1): 传感器介绍

激光雷达,也称光学雷达(LIght Detection And Ranging)是激光探测与测距系统的简称,它通过测定传感器发射器与目标物体之间的传播距离,分析目标物体表面的反射能量大小、反射波谱的幅度、频率和相位等信息,从而呈现出目标物精确的三维结构信息。激光雷达是自动驾驶车辆的关键传感器,如下图所示,车辆上方旋转的圆柱体对应就是激光雷达传感器。

@bangbang的博客 1475

linux下c语言实现cp命令

一.实现思路 src 源文件 des 目标文件 1.打开源文件(src) 2.读(read)scr到buf 3.打开/创建目标文件(des) 4.将buf写入(write)目标文件 5.关闭(close)目标文件和源文件 二.main函数参数 int main(int argc,char *argv[]) { return 0; } C语言规定了main函数的参数只能有两个,一个是argc,一个是argv并且,argc只能是整数,第二个必须是指向字符串的指针数组。 由于main函数不

aaaaaaaa123345的博客 1080

【原创教程】汇川H5U入门教案第二课

定时器指令IN输入能流从OFF变为ON时,定时器启动计时,输出Q为ON,IN输入能流从ON变为OFF时,在IN保持为OFF期间,定时器的运行时间是PT参数指定的时间,定时器定时时间达到PT参数指定的时间后,Q变为OFF。IN输入能流为ON时,ET输出值为0,IN从ON变为OFF时,在定时器计时运行期间,ET输出当前的计时时间,定时器计时时间到达PT参数指定的时间后,ET值保持。IN输入能流为ON时,在定时器计时运行期间,ET输出当前的计时时间,定时器计时时间到达PT参数指定的时间后,ET值保持;

Qinmingyue13的博客 2479

Linux之自己实现cp指令

1.打开源文件,判断argc

jyy200108的博客 370

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

四、Linux文件编程小应用1—在linux下实现自己的cp指令

cp指令是用于复制文件或目录的指令,如同时指定两个以上的文件或目录,且最后的目的地是一个已经存在的目录,则它会把前面指定的所有文件或目录复制到此目录中。cp 命令主要用于拷贝文件,用法,cp demo1.c /tmp/new.txt。

weixin_60660632的博客 229

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

文件编程里如何编程自己的CP指令

文件编程里如何编程自己的CP指令 1 编译这个cp指令的思路 1)我们得打开源文件 2)将源文件读入到我们设置的参数上,如readBuf 3) 打开目的文件 4)将源文件读取的内容readBuf写入到目的文件 5)关闭源文件和目的文件 2 main 的参数 main 函数中我们需要设置参数,来传入我们复制的源文件和目的文件 int main(int argc,char **argv) 例如我们编译完以后,可以敲入命令**./a.out demo1.c demo2.c** 其中./a,out 是运行程

weixin_46146080的博客 276

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

Linux 文件编程(第二阶段文件操作函数的一下使用)

8.文件操作小应用之实现cp指令

weixin_51941657的博客 166

Linux文件部分练习

Linux文件编程

qq_42747843的博客 120

用C语言实现Linux系统的cp指令

在实现cp指令之前,首先先要了解这样一个概念,我们平时在写代码时 int main() 这个括号里省略了3个参数。 int main(int argc,char** argv,char** environ) //argc 表示参数的数量 //argv 是一个字符串数组,里面按顺序存储着每一个参数的名字。 //environ 是环境变量,我们现在暂时用不到。 了解了这个之后我们...

weixin_43716607的博客 2413

Linux学习日记5:CP指令的实现

本文介绍了Linux系统中的CP指令实现原理。首先讲解了main函数参数argc和argv[]的作用,为理解CP指令参数处理打下基础。然后详细说明了CP指令的基本语法、常用选项以及不同场景下的复制行为准则。最后通过代码示例展示了CP指令的实现流程:通过open函数打开源文件和目标文件,使用read/write函数循环读写数据,并最终关闭文件描述符。文章提供了一个完整的文件复制程序实现,验证了其功能与系统CP指令一致。

2201_75969037的博客 1194

使用C语言实现Linux命令cp

使用C语言实现Linux命令cp 实现拷贝命令,使用方式为cp name.txt file.txt //实现文件copy #include <stdio.h> #include <string.h> #include <stdlib.h> #include <time.h> #define MAXSIZE 1024 int mai...

Bamboo 1万+

Linux c语言操作入门文件编程之实现CP指令

Linux c语言操作入门文件编程之实现CP指令。

ONERYJHHH的博客 1244

Linux系统下cp指令的实现

Linux系统下cp指令的实现

qq_54206194的博客 1964

C语言实现简单版Linux的cp命令

C语言实现简单版的Linux的cp命令 前言: ​ 这是我的第一篇优快云文章,写的不够好的地方有请各路大神指正。本人也是接触代码时间很短,在这里希望把自己学习到的知识写成一些有用的代码。后面有空的话还会继续多写写这类的文章。 ​ 不想看文章写了啥的同鞋请直接拉到最下面拉代码。 一、通过主函数传参实现cp命令参数的传入 (1)int argc ​ 这个参数记录着有多少个主函数传参,数值为实际需要的传参数加1而cp命令需要两个参数(不考虑-r -f等等参数),分别是复制的源路径以及复制的目标

weixin_44948689的博客 2139

cp命令实现(linux下c语言),linux中cp命令如何用 C语言实现

满意答案lawliet6725推荐于 2016.10.141,首先需要了解cp的原理。2,可以参考cp的源码去了解其原理3,cp命令的源码可以在linux内核中找到。4,或者下载busybox其中也会有cp的源码只有了解其原理之后才能谈如何实现。参考代码如下:#include#include#include#include#include#include#include#includ...

weixin_34310726的博客 1061

Linux 常用指令及c语言的编译运行

目录 掌握开机、登录、退出、关机步骤 学习Linux的常用命令 学习vi 编辑器的使用 学习在命令终端下,编译、连接、运行一个程序的方法。 编制一个C语言程序,显示“hello world”, 编译、连接、运行。 掌握开机、登录、退出、关机步骤 登入root账户 指令:$su 或 $su root 随后输入密码 进入如图界面,‘$’变成‘#’说明登入root账户成功。 退出root账户​​​...

weixin_51717063的博客 4299
上一篇: Linux系统文件编程及文件读、写操作
下一篇: Python字符串的格式化
Akzeptieren
博客等级 码龄8年 65粉丝 79原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值