实验三普通文件和目录编程。
10电子班卢栋苇 1039049
3.1编写程序实现从命令行读入文件的复制功能,用原始文件系统调用。
1)、程序流程图。yn
ynyn
nyny
2)、程序**:
*程序取名为
#include <>所需的头文件*/
#include
#include
#include <>fcnt1()是一个通用函数,对打开的各种描述符进行各种操作 , open()和creat()函数声明在头文件中。
#include <>close()函数声明在头文件。
#include <>
#define bufsize 5 /*每次读写缓存大小,影响运行效率*/
main(int argc,char * ar**)
int fd1,fd2fd1 fd2 文件描述符*/
int i;
char buf[bufsize]; buf 指定存储器读处数据的缓冲区 */
if(argc!=3)
fd1=open(ar**[1],o_rdonly); 用只读方式打开要复制的文件1,o_rdonly 要用大写形式*/
if(fd1==-1)
fd2=open(ar**[2],o_rdwr|o_creat); 打开文件2,读写允许,且在文件不存在时创建*/
if(fd2==-1)
*读入文件和复制功能*/
while(1)
i=read(fd1,buf,bufsize); read()函数将用于从指定的文件描述符中独处数据存放到缓存区buffer */
write(fd2,buf,i); 从fd1中实际读到的字符数写到fd2中。
if(i!=bufsize) break; 若i不等于bufsize时,则表明写到文件尾。
close(fd1); close()应用于关闭一个打开文件(fd1) *close(fd2); close()应用于关闭一个打开文件(fd2) *
return 0; /成功返回0,出错返回-1 */
3)、程序运行结果:
student@student-desktop:~$gcc -o mycp2
student@student-desktop:~$mycp2
argument error //提示上一句用法错误。
student@student-desktop:~$mycp2 //正确的用法:把文件复制到文件。
student@student-desktop:~$cat 用cat命令显示文件里面的内容。
the famous example c program
#include <>
int main(void)
printf("hello, the world!");
return 0;
文件里面的程序内容。
dp=opendir(".
if(dp!=null)
while(ep = readdir(dp))
puts(ep->d_name);
closedir(dp);
elseputs("couldn't open the directory .");
return 0;
student@student-desktop:~$
文件里面的程序内容。
3.2编写程序实现文件内容的显示,用原始文件系统调用实现。
1)程序流程图:yny
Linux实验
大学。实。验。报。告。系班级姓名学号。课程 linux 教师。实验的目的。为了更好的了解和掌握linux操作系统的,和对linux的常见的命令的运用,以及远程的控制,linux服务器的主机,等linux操作系统有关的问题。实验的内容。1.安装虚拟机软件vmware workstation 6.5或更...
Linux实验
实验1 linux在虚拟机上的安装及与宿主机通信。一 实验目的。1 了解虚拟机的安装与使用方法。2 掌握linux 在虚拟机上 的安装过程。3.学习linux图形用户界面和命令行命令的使用。3 掌握虚拟机上的linux与宿主机之间通信的方法。4 为后续的实验准备环境。5.了解linux内核和发行版本...
linux实验
南京信息工程大学实验 实习 报告。实验 实习 名称 linux下shell编程实验 实习 日期得分指导教师 一 实验目的。1.掌握编辑器vi的基本用法。2.练习编写shell程序。二 实验内容及步骤。实验内容 1.编辑器vi的使用方法。2.编写shell程序。实验步骤 1.复制 etc passwd...