欢迎来到天天文库
浏览记录
ID:26159953
大小:273.00 KB
页数:14页
时间:2018-11-25
《linux-课程设计》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、滨江学院课程设计报告题目Linux课程设计院系计算机系专业计算机科学与技术学生姓名学号2014年12月30日目录1.Shell编程题21.1求费波纳奇数列的前20项及总和。21.2实现自动创建文件分别拷贝到各自相应的目录下。31.3shell编程判断文件是否存在,输出相应的结果51.4设计一个shell程序cuts62.Linux下C语言程序设计—课程设计82.1、Linux下用C语言进程实现83.实验总结141.Shell编程题1.1求费波纳奇数列的前20项及总和。Shall脚本代码截图:Linux下运行截图:1.2实现自动
2、创建文件分别拷贝到各自相应的目录下。Shall脚本代码截图:运行前目录截图:运行后目录截图:1.3shell编程判断文件是否存在,输出相应的结果Shall脚本代码截图:运行截图1.4设计一个shell程序cuts例如:$cuts1114Thisisatestofcutsprogram(键盘输入)test(显示结果)代码截图运行截图2.Linux下C语言程序设计—课程设计2.1、Linux下用C语言进程实现一.#include#include#include3、/types.h>#includemain(){pid_tpid1,pid2;charstr1[20],str2[20];if((pid1=vfork())<0){perror("创建子进程一错误!");exit(0);}elseif(pid1==0){printf("输入字符串一:");scanf("%s",str1);exit(0);}if((pid2=vfork())<0){perror("创建子进程二错误!");exit(0);}elseif(pid2==0){printf("输入字符串二:4、");scanf("%s",str2);exit(0);}waitpid(pid1,NULL,0);waitpid(pid2,NULL,0);printf("你输入的字符串一:%s",str1);printf("你输入的字符串二:%s",str2);}二.#include#include#include#include#include#include#include#incl5、ude#include#definekey1024#definesize160staticvoidsign(int);intshmid;char*shmaddr;main(){pid_tpid;charstr[20];shmid=shmget(key,size,IPC_CREAT6、0600);if((pid=fork())<0){perror("创建子进程错误!");exit(0);}elseif(pid==0){if(signal(SIGUSR1,sign)==SIG_ERR)7、{printf("SIGUSR1错误!");exit(0);}pause();printf("子进程结束!");exit(0);}sleep(1);shmaddr=(char*)shmat(shmid,NULL,0);printf("请输入字符串:");scanf("%s",str);strcpy(shmaddr,str);shmdt(shmaddr);kill(pid,SIGUSR1);wait();shmctl(shmid,IPC_RMID,NULL);}staticvoidsign(intsignnum){int8、fd;char*shmaddr;if(signnum==SIGUSR1){printf("子进程接收到SIGUSR1.");shmaddr=(char*)shmat(shmid,NULL,0);if((fd=open("testfile.txt",O_RDWR9、O_CREAT10、O_TRUNC))==-1){printf("打开文件错误!");return0;}else{printf("写入:%s",shmaddr);write(fd,shmaddr,20);close(fd);}shmdt(shmaddr);}11、}运行结果:3.实验总结通过这次实验,我对Linux系统有了进一步的了解,更加熟悉Linux的基本操作,在实验过程中,通过编写shell程序对在Linux环境下的shell编程更佳熟悉了,回顾了在Linux环境下shell程序的编写、通过高gcc编译和运行,通过最后一个实验我
3、/types.h>#includemain(){pid_tpid1,pid2;charstr1[20],str2[20];if((pid1=vfork())<0){perror("创建子进程一错误!");exit(0);}elseif(pid1==0){printf("输入字符串一:");scanf("%s",str1);exit(0);}if((pid2=vfork())<0){perror("创建子进程二错误!");exit(0);}elseif(pid2==0){printf("输入字符串二:
4、");scanf("%s",str2);exit(0);}waitpid(pid1,NULL,0);waitpid(pid2,NULL,0);printf("你输入的字符串一:%s",str1);printf("你输入的字符串二:%s",str2);}二.#include#include#include#include#include#include#include#incl
5、ude#include#definekey1024#definesize160staticvoidsign(int);intshmid;char*shmaddr;main(){pid_tpid;charstr[20];shmid=shmget(key,size,IPC_CREAT
6、0600);if((pid=fork())<0){perror("创建子进程错误!");exit(0);}elseif(pid==0){if(signal(SIGUSR1,sign)==SIG_ERR)
7、{printf("SIGUSR1错误!");exit(0);}pause();printf("子进程结束!");exit(0);}sleep(1);shmaddr=(char*)shmat(shmid,NULL,0);printf("请输入字符串:");scanf("%s",str);strcpy(shmaddr,str);shmdt(shmaddr);kill(pid,SIGUSR1);wait();shmctl(shmid,IPC_RMID,NULL);}staticvoidsign(intsignnum){int
8、fd;char*shmaddr;if(signnum==SIGUSR1){printf("子进程接收到SIGUSR1.");shmaddr=(char*)shmat(shmid,NULL,0);if((fd=open("testfile.txt",O_RDWR
9、O_CREAT
10、O_TRUNC))==-1){printf("打开文件错误!");return0;}else{printf("写入:%s",shmaddr);write(fd,shmaddr,20);close(fd);}shmdt(shmaddr);}
11、}运行结果:3.实验总结通过这次实验,我对Linux系统有了进一步的了解,更加熟悉Linux的基本操作,在实验过程中,通过编写shell程序对在Linux环境下的shell编程更佳熟悉了,回顾了在Linux环境下shell程序的编写、通过高gcc编译和运行,通过最后一个实验我
此文档下载收益归作者所有