#include <string.h>
#include <strings.h>
#include <stdio.h>
#include <stdlib.h>
#define BUFFER_SIZE 1024
int main(int argc,char **argv)
{
FILE *from_fd;
FILE *to_fd;
long file_len=0;
char buffer[BUFFER_SIZE];
char *ptr;
/*判断入参*/
if(argc!=3)
{
printf("Usage:%s fromfile tofile\n",argv[0]);
exit(1);
}
/* 打开源文件 */
if((from_fd=fopen(argv[1],"rb"))==NULL)
{
printf("Open %s Error\n",argv[1]);
exit(1);
}
/* 创建目的文件 */
if((to_fd=fopen(argv[2],"wb"))==NULL)
{
printf("Open %s Error\n",argv[2]);
exit(1);
}
/*测得文件大小*/
fseek(from_fd,0L,SEEK_END);
file_len=ftell(from_fd);
fseek(from_fd,0L,SEEK_SET);
printf("from file size is=%d\n",file_len);
/*进行文件拷贝*/
while(!feof(from_fd))
{
fread(buffer,BUFFER_SIZE,1,from_fd);
if(BUFFER_SIZE>=file_len)
{
fwrite(buffer,file_len,1,to_fd);
}
else
{
fwrite(buffer,BUFFER_SIZE,1,to_fd);
file_len=file_len-BUFFER_SIZE;
}
bzero(buffer,BUFFER_SIZE);
}
fclose(from_fd);
fclose(to_fd);
exit(0);
}
分享到:
相关推荐
实验课linux下实现文件复制
将22的文件内容复制到11文件的末尾,11文件的效果就是: hello world 解决办法: cat 22 >> 11 >>的意思是追加的意思 > 的意思是重定向的意思,会覆盖原先的内容 小Tips: 将a.txt文件的内容清除,并且使得文件的...
运行结果如截图 1 所示:文件 file 中的内容和 file2 中的内容一样,证明我们已经将文件 file 中的内容成功复制到了 file2 中了。 五、实验反思: 由结果截图可知,文件 file 中的内容和 file2 中的内容一样,证明...
8. 文件复制 使用 cp 命令可以复制文件,然后使用 ls 命令来查看文件的信息。 9. 文件删除 使用 rm 命令可以删除文件,然后使用 ls 命令来查看文件的信息。 三、文件存取权限 Linux 系统对所有文件设置了存取...
linux 复制文件 C程序 copy的使用 经典程序
本次实验是关于Linux文件系统及文件管理的上机操作,旨在让学生深入理解和熟练运用Linux操作系统中的文件系统管理和文件操作。实验涵盖了文件系统的格式化、挂载与卸载,目录和文件的创建、移动、复制、删除,以及...
mv 命令不同于 cp 命令,mv 命令是完全的从源移动文件并且把文件移动到指定的目录,而 cp 命令只是复制文件的内容从一个文件到另一个文件。 语法:mv [-f] [-i] 原名称 新名称 mv 命令的常用选项包括: * -f:在...
首先,我们需要理解Linux文件系统的目录结构和文件操作的基本接口。在Linux中,一切都是文件,包括设备、目录等。C语言提供了标准的`<stdio.h>`库,但对文件系统的低级别操作,我们通常使用`<sys/stat.h>`,`...
这将将本地目录 /home/test/ 及其所有子目录和文件复制到远程服务器 172.30.10.111 的 /home/test/ 目录下。 scp 命令的优点是: * 安全性高:scp 命令基于 ssh 登陆协议,确保了文件传输的安全性。 * 速度快:scp...
### Linux文件和目录操作命令详解 #### 一、概述 Linux作为一款强大的开源操作系统,广泛应用于服务器、桌面以及嵌入式设备等领域。对于初学者来说,掌握基本的文件和目录操作命令至关重要。本文将深入介绍Linux...
【标题】"Linux基础课件Linux系统文件复制cp命令共9页.p" 指的是一份关于Linux操作系统中文件复制操作的教程资料,重点介绍了Linux中的`cp`命令。这个命令是Linux用户日常操作中不可或缺的一部分,用于在文件系统内...
总之,Linux分区和复制涉及的知识点包括Linux文件系统(如EXT3和SWAP)、分区工具(如fdisk和parted)、引导管理(MBR、GRUB)以及多系统共存下的引导配置。在处理这类问题时,理解Linux的底层原理和引导流程是至关...
通过以上详细解析,我们可以看出`scp`命令在Linux环境下进行文件复制和传输方面非常实用且强大。掌握这些命令的使用方法对于系统管理员来说至关重要,能够显著提高工作效率并保障数据的安全传输。
### Linux文件系统基础知识详解 #### 一、文件系统概述 文件系统是操作系统中不可或缺的核心组成部分之一,它负责管理和组织存储设备(如硬盘、SSD等)上的数据。具体而言,文件系统定义了一套规则和数据结构,用...
本篇将深入探讨Linux文件系统中的五种主要文件类型:普通文件、目录文件、连接文件、设备文件以及特殊文件(包括管道文件和套接字文件)。 1. **普通文件**: 普通文件是最常见的文件类型,包含文本、二进制数据、...
Linux 操作系统中的文件类型可以分为普通文件、目录文件、链接文件、设备文件、套接字文件和管道文件。普通文件是存储数据的文件,目录文件是存储文件的文件,链接文件是指向其他文件的文件,设备文件是访问设备的...
在linux命令行模式中,复制命令(文件)及该命令相关的依赖库到指定目录。 原理: which找出命令源路径 ldd找出相关依赖库 找到后,复制到指定目录,如指定目录有相同文件则忽略
用LinuxC库函数实现两个文件间的复制,例如:fopen、fclose 用LinuxC库函数实现两个文件间的复制
Linux文件系统是操作系统的核心组成部分,它负责组织和管理磁盘上的数据,为用户提供有序的数据存储和访问机制。在Linux环境中,文件系统不仅包含常规的文本和二进制文件,还包括目录、符号链接、设备文件等多种类型...