Linux课程设计报告

合集下载

Linux程序设计课程设计 (2)

Linux程序设计课程设计 (2)

Linux程序设计课程设计一、课程设计背景Linux是一种自由和开放源代码的类Unix操作系统,已成为Web服务器设备和许多嵌入式系统的首选操作系统。

Linux程序设计课程是为了培养学生Linux操作系统和程序操作的能力,让学生掌握Linux下的程序设计和管理。

二、课程设计目的本课程的目的是让学生能够掌握Linux操作系统下的程序设计和管理技能,让学生能够在Linux环境下编写并运行程序,学生能够了解Linux常用的程序设计语言,熟悉常用程序设计工具和命令。

三、课程设计内容1. Linux安装学生需要了解Linux的安装流程及注意事项。

在了解了Linux操作系统安装的基本知识后,学生需要根据课程要求在虚拟机环境中进行Linux的安装练习。

课程需要覆盖CentOS、Ubuntu和Fedora等常见Linux发行版的安装和配置方法。

2. Linux基础学生需要掌握Linux系统的基本操作,理解Linux文件系统组织结构和常用命令的使用方法。

课程需要覆盖Linux文件系统常用命令、文件读写、编辑器使用、文件管理等操作。

3. Shell编程在掌握Linux基础操作后,学生需要了解Shell脚本的基本概念和编程方法。

学生需要掌握Shell脚本的语法和用法,独立完成Shell脚本的编写。

课程需要覆盖Shell脚本的基本语法、流程控制、函数定义以及输入输出等内容。

4. 常用编程语言及工具本课程需要让学生了解在Linux环境下常用的编程语言和开发工具,主要包括如下几种语言和工具:1.C/C++编程:学生需要了解C/C++编程语言在Linux环境下的编译和运行方法,学生需要编写C/C++程序并在Linux环境下运行;2.Python编程:学生需要了解Python编程语言的语法和用法,在Linux环境下编写Python程序;3.Git版本控制工具:学生需要掌握Git的基本使用方法,了解如何在Linux环境下使用Git进行版本控制和协作开发;4.GNU开发工具集:学生需要掌握GNU开发工具集的基本用法,包括GCC编译器、Makefile、GDB调试器等。

Linux程序设计课程设计报告

Linux程序设计课程设计报告

Linux程序设计课程设计报告2010-2011学年第二学期设计题目:基于GNOME的菜单构件学号:姓名:成绩评定:日期:目录一、设计任务书 (1)1.1 题目与要求 (1)1.2 本程序涉及的知识点 (1)二、关键技术、程序难点与解决方案 (2)三、功能设计 (3)3.1、程序算法 (3)3.2、主要功能流程图 (5)3.3、具体功能说明图 (5)四、程序设计主要代码 (6)五、Linux程序设计课设总结 (7)一、设计任务书1.1、题目与要求题目:编写一个能够包含菜单构件的GNOME程序要求:顶层菜单包含“文件”和“编辑”两项,其中在文件的子菜单中包含“新建”和“关于”,编辑的子菜单中包含“输入”和“输入”当我们单击文件菜单的子菜单“新建”时,在屏幕上输出“Good Luck !”;当单击“关于”时,在屏幕上输出“Linux C”;当我们单击“输入”时,从终端读入一个字符串(字符串的长可是由编程者自定);当单击“输出”时,从终端输出一我们刚刚读入的字符串,如果没有读入字符串,那么就提出“请先输入字符串:”之后输入字符串,再执行输出。

1.2、本程序涉及的知识点本程序涉及的知识点是首先要弄明白什么是GNOME,在GNOME中的程序设计中,需要知道菜单是如何定义、调用,之后根据对于GNOME的了解再将菜单创建出来,定义函数将菜单的功能实现。

当程序编写完成进行编译、连接时千万不能忘记连接GNOME类库。

GnomeApp构件是GNOME应用程序的基本构件,这个构件能够包含菜单、工具栏和数据的主要实现窗口。

我们可以利用gnome_app_new函数来创建一个新的构件,再调用gnome_app_create_menu或gnome_app_create_toolbar函数就能够实现菜单的功能。

此外,在gnome的程序设计中类库的应用也是非常重要的,libgnome和libgnomeui是任何GNOME编程中都要用到的两个主要库,用来独立于任何特定的GUI工具箱。

操作系统课程设计实验报告(以Linux为例)

操作系统课程设计实验报告(以Linux为例)

目录目录 0一、实验环境 (1)二、实验报告总体要求 (1)实验一编译L INUX内核 (2)实验二观察L INUX行为 (6)实验三进程间通信 (13)一、实验环境Linux平台◆硬件平台:普通PC机硬件环境。

◆操作系统:Linux环境,例如,红旗Linux或Red Hat Linux;启动管理器使用GRUB。

◆编译环境:伴随着操作系统的默认gcc环境。

◆工作源码环境:一个调试的内核源码,版本不低于2.4.20。

二、实验报告总体要求在2013年11月25日前提交实验报告。

实验报告至少要求包含以下内容:1.引言:概述本次实验所讨论的问题,工作步骤,结果,以及发现的意义。

2.问题提出:叙述本篇报告要解决什么问题。

注意不可以抄写实验要求中的表述,要用自己的话重新组织我们这里所提出的问题。

3.解决方案:叙述如何解决自己上面提出的问题,可以用小标题 3.1,3.2…等分开。

这是实验报告的关键部分,请尽量展开来写。

注意,这部分是最终课程设计的基本分的部分。

这部分不完成,本课程设计不会及格。

4.实验结果:按照自己的解决方案,有哪些结果。

结果有异常吗?能解释一下这些结果吗?同别人的结果比较过吗?注意,这部分是实验报告出彩的地方。

本课程设计要得高分,应该在这部分下功夫。

5.结束语:小结并叙述本次课程设计的经验、教训、体会、难点、收获、为解决的问题、新的疑惑等。

6.附录:加了注释的程序清单,注释行数目至少同源程序行数目比1:2,即10行源程序,至少要给出5行注释。

操作系统课程设计实验报告实验一编译Linux内核实验时间6小时实验目的认识Linux内核的组成,掌握配置、编译、安装Linux内核的步骤。

实验目标下载2.6.19或更新的Linux内核,配置该内核使其支持NTFS,并在新的内核中修改其版本为Linux NameTestKernel x.x.x,其中,Name是你的名字(汉语拼音);x.x.x是新内核的版本号,最后在你的机器上编译安装这个新内核。

Linux课程设计报告书模版

Linux课程设计报告书模版

Linu*系统与程序设计课程设计报告书报告人:目录:1、实验工程目的32、实验工程的功能及模块划分23、实验工程的人员组成及指责划分24、设计与实现34.1 系统构造34.2 客户端界面34.2.1 注册34.2.2 登录44.2.3 界面设计44.2.4查找好友44.3效劳器的实现54.3.1 用户登录54.3.2用户管理54.3.3转发聊天消息54.4 文件操作64.5 通信模块的实现64.5.1 通信方式的选择65、测试与调试66、总结77、附录:程序代码91、实验目的在Linu*下利用java编程实现类似于QQ的通信功能。

实现简单的qq功能:注册、登陆、查找好友、聊天功能效劳端还需实现配置文件设置、用户管理、日志显示的功能。

同时使用到相关的的文件操作以及java编程。

通过这次实验来锻炼在Linu*下的编程能力,主要是熟悉Linu*的编程环境,相关命令的操作、java软件的安装、以及对文件的操作,网络通讯等相关的方面东西。

2、实验工程的功能及模块划分本实验是一个Linu*下的网络即时通信工具,实现三人间的通讯。

这个工程总共分为五个模块客户端,效劳器,通讯,文件操作以及文档维护与测试。

客户端的在分为登录、从效劳器端获取在线人员并显示、选择联系人、向在线人员发送消息。

实时显示别人发给你的消息。

效劳端主要是为客户端提供相关的信息效劳,包括保存登录人员的IP信息、发送给客户端其他登录人员的IP、操作数据库等相关操作。

根本上完成了注册、登陆、聊天功能总体来说可以分为几下几个模块:1〕客户端与效劳器的界面设计2〕客户端的通信局部3〕效劳端的通信局部4〕文件操作5〕文档测试与维护3、实验工程的人员组成及指责划分**:组长,系统分析、整体设计和模块划分**:通信模块设计和编码。

**:客户端以及效劳器界面设计和编码。

**:文档维护和测试。

**:文件操作的设计和编码。

4、设计与实现4.1 系统构造发送信息1转发信息2转发信息1发送信息24. 2. 4 查找好友4.3效劳器的实现4.3.1 用户登录: 当客户端填写相关信息后,点击登录,将会通过UDP协议发送信息至效劳器端,效劳器端将保存客户端的端口信息到文件中。

linux课程设计报告总结

linux课程设计报告总结

linux课程设计报告总结Linux课程设计报告总结一、前言Linux是一个开源的操作系统,被广泛应用于服务器、嵌入式设备、移动设备等领域。

在计算机科学和工程领域,Linux已成为必备的技能之一。

因此,在大学的计算机科学专业中,Linux作为一门课程也越来越受到重视。

本文将对一门Linux课程的设计报告进行总结,主要包括课程目标、课程内容、教学方法、学生评价等方面。

二、课程目标本门Linux课程的主要目标是让学生掌握Linux操作系统的基本知识和技能,包括:1. 熟练掌握Linux操作系统的基本概念和原理;2. 掌握Linux操作系统的常用命令和操作;3. 掌握Linux下的应用开发和系统管理技能;4. 能够使用Linux操作系统进行网络配置和管理;5. 能够解决Linux系统的常见问题和故障。

三、课程内容本门Linux课程的内容主要包括以下几个方面:1. Linux基本概念和原理:介绍Linux操作系统的发展历史、特点、体系结构等基本概念和原理。

2. Linux操作系统安装和配置:介绍Linux操作系统的安装和配置过程,包括硬件要求、分区、文件系统、驱动程序等。

3. Linux基本命令和操作:介绍Linux下的基本命令和操作,包括文件管理、进程管理、用户管理、权限管理等。

4. Linux应用开发和系统管理:介绍Linux下的应用开发和系统管理技能,包括Shell编程、网络编程、系统管理工具等。

5. Linux网络配置和管理:介绍Linux下的网络配置和管理技能,包括网络协议、网络配置、网络管理等。

6. Linux系统故障和修复:介绍Linux系统的常见问题和故障,以及相应的修复方法。

四、教学方法本门Linux课程的教学方法主要采用理论教学和实践教学相结合的方式,包括:1. 理论教学:通过讲授Linux的基本概念、原理和命令等知识,让学生掌握Linux操作系统的基本知识。

2. 实践教学:通过实践操作,让学生掌握Linux操作系统的应用开发和系统管理技能,以及网络配置和管理技能。

Linux课程设计实验报告

Linux课程设计实验报告

pdata->activity_mode = !pdata->activity_mode; gtk_progress_bar_pulse (GTK_PROGRESS_BAR (pdata->pbar)); gtk_progress_bar_set_fraction (GTK_PROGRESS_BAR (pdata->pbar),0.00); gtk_progress_bar_set_text (GTK_PROGRESS_BAR (pdata->pbar), "0.00"); gtk_container_add (GTK_CONTAINER (align), pdata->pbar); gtk_widget_show (pdata->pbar); /* 加一个定时器(timer), 以更新进度条 的值 */ pdata->timer = gtk_timeout_add (100, progress_timeout, pdata); separator = gtk_hseparator_new (); gtk_box_pack_start (GTK_BOX (vbox), separator, FALSE, FALSE, 0); gtk_widget_show (separator); /* 行数、 列数、 同质性(homogeneous) */ table = gtk_table_new (2, 2, FALSE); gtk_box_pack_start (GTK_BOX (vbox), table, FALSE, TRUE, 0); gtk_widget_show (table);
3. 通过系统调用实现文件拷贝
5
a.程序说明: 要在 linux 下实现系统调用,首先修改内核中的三个文件,分别是 unistd.h,sys.c 和 syscalltable.s(这个是 2.6 版本和 2.4 版本的区别所在,2.4 版本要改的文件是 entry.s), 然后需要重新编译内核,具体步骤如下: Make clean Make bzImage Make modules Make modules_install Make install 最后一步最为关键,2.6 版本不需要手动修改 grub,只需要执行 make install 就会自动 修改 grub,然后只要在启动时选择新内核即可,完全不需要手工操作. 此外还需要一个测试文件,文件拷贝的代码当然是原先写在内核里,这里是 sys.c 文 件.编译后的内核下通过系统调用同样实现了程序一文件拷贝的效果. b.程序源码 测试程序: while(!feof(f1)) #include <stdio.h> { #include <stdlib.h> #include <string.h> s=fgetc(f1); if(s==EOF) break; fputc(s,f2); int mysyscall(char *f1,char *f2) } { sys_close(f1); sys_close(f2); printk("Copy complete!!\n"); f1=sys_open(f1,"r"); } f2=sys_open(f2,"w"); int s=0; Sys.c 里的文件拷贝代码:

linux实验报告总结-共10篇

linux实验报告总结-共10篇

∣inux实验报告总结(共10篇)(Linux实验报告汇总)(一)Shell 编程一、实验目的:1)掌握在Linux下的C编程基本方法。

2)掌握shell编程方法。

3)掌握dialog图形化编程方法。

二、实验内容1、编写能输出“Hello world!”问候语的C程序,并在终端中编译、执行。

要求记录所使用的命令及结果。

#include stdio.hmain()(printf(Hello world!\n);)2、编写一个C程序并设置其在后台执行,其功能是在一段时间后(可自行设置),在屏幕上显示信息:Time for play!,写出相应的程序、命令及结果。

#include stdio.hmain()(int time=0;printf(请输入等待时间(单位:s):);scanf(%d/&amp;time);sleep(time);printf(Time for play!\n);)3、编写C程序,求1到100之间整数的阶乘和,并对程序进行优化。

写出程序、命令和结果。

#include stdio.hmain()int i;double s = l,sum = 0;for( i= l;i= 100;i++)sum+=s*=i;printf( 1到100之间整数的阶乘和:%f\n,sum);printf( 1到100之间整数的阶乘和:%e\n,sum);}4、编写C程序,根据键盘输入的半径求圆面积,要求在命令行周率(P∣=3∙14,PI=3∙14159,PI=3.14159626 等)进行编使用不同的译,写出程序、命令和结果。

#include stdio.hint main()double r = 0.0 , Area = 0.0;printf(请输入半径:);scanf(%lf, &amp;r);Area = PI * r * r;printf(圆面积:%f∖n, Area);)5、编写shell程序sh.l,完成向用户输出“你好!”的问候语。

LINUX操作系统-课程设计报告.doc

LINUX操作系统-课程设计报告.doc

xxx软件工程职业学院课程设计报告2015-2016学年度第一学期题目:LINUX操作系统姓名:xxxx班级:网络xxx系部:计算机学院指导教师:xxx日期:2015年11月21日Linux是一套免费使用和自由传播的类Unix操作系统,是一个基于POSIX和UNIX的多用户、多任务、支持多线程和多cpu的操作系统。

它能运行主要的UNIX工具软件、应用程序和网络协议。

Linux继承了Unix以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。

它主要用于基于Intel x86系列CPU的计算机上。

这个系统是由全世界各地的成千上万的程序员设计和实现的。

其目的是建立不受任何商品化软件的版权制约的、全世界都能自由使用的Unix兼容产品。

通过这次课程设计,提高了我们对Linux各子系统服务配置的动手能力和实践操作综合应用的能力。

关键字:DHCP服务、Samba服务器、DNS服务、WWW服务、FTP服务、telnet摘要 (2)目录 (3)DHCP服务 (4)一、需求分析: (4)二、步骤与结果: (4)三、拓扑图 (5)四、总结: (5)DNS (6)一.需求分析 (6)二.配置步骤 (6)三.拓扑图 (8)四.总结 (8)Samba (8)一.需求分析 (8)二.步骤与结果 (9)三.总结 (11)WWW (11)一.需求分析 (11)二.步骤与结果 (11)三.总结 (17)Telnet (17)一.需求分析 (17)二.步骤与结果 (17)三.总结 (19)FTP (19)一需求分析 (19)二步骤与结果 (20)三.总结 (23)参考文献 (23)DHCP服务一、需求分析:由于公司内部很多 Notebook计算机使用的场合!所以 Notebook 在使用上,当设定为DHCP client 的时候,那么只要它连接上的网域里面有一部可以上网的 DHCP服务器,那部notebook 也就可以连接上 Internet 了!网域内数量相当的多时:另外一个情况就是网域内计算机数量相当庞大时,大到您没有办法一个一个的进行说明来设定他们自己的网络参数,这个时候为了省麻烦,还是架设DHCP 来的方便。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

《Linux课程设计》设计题目: shell 编程实现用户信息管理专业:软件工程指导教师:蔡照鹏王斌斌班级:学号:姓名:同组人:计算机科学与工程学院Linux是一种自由和开放源码的类Unix操作系统,存在着许多不同的Linux版本,但它们都使用了Linux核。

Linux可安装在各种计算机硬件设备中。

Linux是一个领先的操作系统,世界上运算最快的10台超级计算机运行的都是Linux操作系统。

严格来讲,Linux这个词本身只表示Linux核,但实际上人们已经习惯了用Linux来形容整个基于Linux核,并且使用GNU 工程各种工具和数据库的操作系统。

Linux得名于天才程序员林纳斯·托瓦兹。

Linux操作系统是UNIX操作系统的一种克隆系统,它诞生于1991 年的10 月5 日(这是第一次正式向外公布的时间)。

以后借助于Internet 网络,并通过全世界各地计算机爱好者的共同努力,已成为今天世界上使用最多的一种UNIX 类操作系统,并且使用人数还在迅猛增长。

Linux是一套免费使用和自由传播的类Unix操作系统,是一个基于POSIX和UNIX的多用户、多任务、支持多线程和多CPU的操作系统。

它能运行主要的UNIX工具软件、应用程序和网络协议。

它支持32位和64位硬件。

Linux继承了Unix 以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。

它主要用于基于Intel x86系列CPU的计算机上。

这个系统是由全世界各地的成千上万的程序员设计和实现的。

其目的是建立不受任何商品化软件的制约的、全世界都能自由使用的Unix兼容产品。

一、系统环境 (1)1.1硬件环境 (1)1.2软件环境 (1)二、设计目的和要求 (1)三、课程设计容 (2)四、总体设计 (2)4.1部分功能模块流程图 (2)4.2总体功能模块图 (4)五、详细设计 (5)5.1模块功能说明 (5)5.2系统中shell主要命令说明 (5)六、调试与测试 (7)6.1调试方法 (7)6.2测试结果的分析与讨论 (12)七、设计中遇到的问题及解决方法 (12)八、源程序清单 (13)九、总结 (21)参考文献 (22)一、系统环境1.1硬件环境CPU:Intel(R) Core(TM)2 Duo CPU E7500 2.93GHz存:2.93 GHz,2.00GB软件:VC6.0、VMware Workstation、CentOS1.2软件环境操作系统:Windows 7、 Linux编程工具、编程语言: shell编程语言Shell编程语言简介:shell 是操作系统的最外层。

shell 合并编程语言以控制进程和文件,以及启动和控制其它程序。

shell 通过提示您输入,向操作系统解释该输入,然后处理来自操作系统的任何结果输出来管理您与操作系统之间的交互。

shell 提供了与操作系统通信的方式。

此通信以交互的方式(来自键盘的输入立即操作)或作为一个 shell 脚本执行。

shell 脚本是 shell 和操作系统命令的序列,它存储在文件中。

二、设计目的和要求掌握linux操作系统中shell脚本编程技术中的:变量定义、变量使用、循环控制结构、条件选择结构、用户交互、文件读写、文本容分析以及linux 重要命令的使用等。

以验证学生对于shell脚本编程的掌握情况。

要求学生能够利用shell脚本编程实现较为基本的功能。

Linux作为多用户、多任务的操作系统,其系统资源是所有用户共享的。

对用户的管理是操作系统的重点。

LINUX课程设计要用shell编程实现,将理论学习付诸实践。

设计一个脚本(shell)程序能实现增加、删除、查找和显示特定用户信息的功能。

三、课程设计容在主Shell脚本文件里(必须以 menu 命名)要有一个多操作选项的菜单以便用户从中选择。

在不同任务的中,这些操作能自动实现以下功能:1)在屏幕上显示当前所有用户的记录2)在屏幕上显示当前所有用户(经过格式化和排序的)的记录3)只在屏幕上显示用户名和用户ID4)只在屏幕上显示(经过格式化和排序的)用户名和用户ID5)查询并显示特定用户的记录6)往passwd文件里增加新的用户记录7)从passwd文件里删除某个用户记录在目录下有四个文件分别为menu,passwd,add,delete其中: menu文件中的程序完成1,2,3,4,5功能;另外写一个add脚本文件和delete脚本文件分别实现选项6和7.当用户做了选择且所选的操作完成之后,可以再次显示主菜单以供用户做下一步选择。

用while循环和case条件语句配合来完成此操作。

Q:退出四、总体设计4.1部分功能模块流程图(1)总体流程图图4-1 总体流程图(2)查看指定用户图4-2 查看指定用户(3)添加用户主菜单界面是否继续添加进入add 界面Y输入信息是否有效Y进入主菜单NN是否保存Y图4-3 添加用户(4)删除用户图4-4 删除用户图4-5 总体功能模块图五、详细设计5.1模块功能说明shell编程用户信息管理系统中,由passwd文件,add.sh,delete.sh,menu.sh三个shell文件组成。

首先编写passwd文件,在此文件里按照/etc/passwd文件的格式[用户名:密码:用户标志号:组标志号:说明域:用户家目录:用户登录成功后使用的shell程序]写下设置的用户信息。

add.sh是对用户信息进行增加的shell程序,提示用户输入用户名,如果没有输入,则继续提示用户输入用户名,如果用户输入了则验证用户名是否符合用户名的要求,是否以非数字打头的字符和数字组成,如果不符合要求则要求用户重新输入,如果符合要求用户需要继续输入密码,然后验证密码和重新输入密码两次输入密码是否一致,若一致则需要用户继续输入用户UID,组GID,说明域,用户家目录,shell路径,若都成功的话,则把信息重定向追加到passwd文件里。

delete.sh是对用户进行删除操作的shell程序,首先需要用户输入用户需要删除的用户名,然后搜索出此用户名的信息,进行确认即可删除。

最后是menu,sh是用户的主函数,通过输入不同的值完成不同的功能,包括显示用户记录,格式化记录,显示用户名和ID,格式化显示用户名和ID,查询特定用户信息,添加新用户,删除用户。

5.2系统中shell主要命令说明符号 #!:用来告诉系统它后面的参数是用来执行该文件的程序。

变量:在shell编程中,所有的变量都由字符串组成,并且不需要对变量进行声明,直接赋值就可以,应用变量的话,用$+变量名的形式。

管道(|):将一个命令的输出作为另外一个命令的输入。

echo :将其命令行参数中的字符串或变量的值写到标准输出设备,在显示器上显示一段文字,一般起到一个提示作用。

echo –n不换行输出echo -e后加上\起到转义作用重定向:将命令的结果输出到文件,而不是标准输出(屏幕)。

< :用于输入重定向> :写入文件并覆盖旧文件>> :加到文件的尾部,保留旧文件容。

test命令:通常用" [ ] "来表示条件测试。

注意这里的空格很重要。

要确保方括号的空格。

[ -f "somefile" ] :判断是否是一个文件[ -n "$var" ] :判断$var变量是否有值[ expression -a expression ] :当两边的两个expression 表达式都为真[ -z string ]:string长度是0[ integer1 -eq integer2 ] :当integer1等于integer2[ integer1 -ne integer2 ] :当integer1不等于integer2"if" 表达式:如果条件为真则执行then后面的部分:if ....; then....elif ....; then....else....ficase 表达式:可以用来匹配一个给定的字符串,而不是数字。

case ... in...) do something here ;;esactr ":" " ":把冒号换成空格sort:对制定文件中的行按要求进行排序sort -k 1 $dataSource;//按第一个域进行排序expr 命令:对表达式进行运算expr match $string substring命令在string字符串中匹配substring 字符串,然后返回匹配到的substring字符串的长度,若找不到则返回0。

expr length $string 求出字符串的长度字符串过滤命令grep:字符串搜索与过滤,显示所在行的相关信息。

grep -i string1 string2 在string2里查找string1,是大小写无关的搜索grep -n $deleteUser $dataSource:显示查找含有$deleteUser信息,并且在最前面加上行号。

cat file.txt:输出文件容到标准输出设备(屏幕)上read var: 提示用户输入,并将输入赋值给变量cut:从文件或标准输入中读取容,并截取每一行的特定部分,然后将结果送到标准输出。

-d sep:指定sep作为输入文件域分隔符,默认为Tab。

cut不支持用空格隔开的列。

cut分隔符只能识别冒号,逗号,句号,tab 键等非空格作为分隔符的文件或命令执行结果。

cut -d “:” -f 1,3 /etc/passwd:用冒号为分隔符,输出/etc/passwd 文件的第1,3列。

sed:是流编辑器,对它的输入流进行按指定格式的转换。

是一个基本的查找替换程序,可以从标准输入读入文本,并将结果输出到标准输出(屏幕)。

sed的操作对象:普通文件,数据流,一个命令的执行结果。

sed -n ‘2p’ student.txt:输出student.txt文件中的第二行sed -e "$rowID d" $dataSource:删除含有$rowID的这一行信息awk:字符串列截取功能。

默认分隔符为白空格。

可以用-F指定分隔符。

语法:awk ‘条件{动作}’ fileawk ‘{printf $2 “\t” $6}’ student.txt:输出student.txt的第2列和第6列。

六、调试与测试6.1调试方法1、正常输入shell程序在/root/linlin/1下系统主界面:1、显示当前所有记录2、格式化显示当前所有用户信息:3、显示用户名和用户ID4、格式化显示用户名和ID5、查询特定用户信息:6、添加新用户7、删除用户8、退出2、特殊输入1、如果输入的非1~7或Q2、如果搜索的用户不存在,提示出错信息3、如果删除的用户不存在,提示出错信息6.2测试结果的分析与讨论在测试中首先要测试各功能是否能够正常执行,是否可以正常显示系统中用户信息,是否可以格式化系统中所有用户信息,显示和格式化用户名和ID,查询特定用户信息。

相关文档
最新文档