实验报告二用户界面与 Shell 命令
linux的shell脚本实验报告
第二次实验内容一、实验名称:Linux下shell编程二、实验类型:设计三、实验目的:1.熟悉Linux的shell几种变量使用2.熟练掌握Linux的shell编程几种结构3.熟练掌握Linux下shell脚本的编写四、实验准备参考教材,课件第7章内容及笔记。
要求实验内容全部写到实验报告上(B5纸)。
五、实验内容1. 练习使用shell四种变量,参考课件例题。
用户自定义变量,环境变量,位置变量,特殊变量这四种变量类型的使用,书中有例题。
2. 调试课件所有shell脚本的例题。
3. 编写如下脚本:●编写脚本if1,测试其功能。
echo -n "word 1: "read word1echo -n "word 2: "read word2if test "$word1" = "$word2"thenecho "Match"fiecho "End of program."●编写脚本chkargs,测试其功能if test $# -eq 0thenecho "You must supply at least one argument."exit 1fiecho "Program running."●编写脚本if2,测试其功能if test $# -eq 0thenecho "You must supply at least one argument."exit 1fiif test -f "$1"thenecho "$1 is a regular file in the working directory"elseecho "$1 is NOT a regular file in the working directory"fi●编写脚本if3,测试其功能echo -n "word 1: "read word1echo -n "word 2: "read word2echo -n "word 3: "read word3if [ "$word1" = "$word2" -a "$word2" = "$word3" ]thenecho "Match: words 1, 2, & 3"elif [ "$word1" = "$word2" ]thenecho "Match: words 1 & 2"elif [ "$word1" = "$word3" ]thenecho "Match: words 1 & 3"elif [ "$word2" = "$word3" ]thenecho "Match: words 2 & 3"elseecho "No match"fi●编写smartzip 脚本,测试其功能#!/bin/bashftype=`file "$1"`case "$ftype" in"$1: Zip archive"*)unzip "$1" ;;"$1: gzip compressed"*)gunzip "$1" ;;"$1: bzip2 compressed"*)bunzip2 "$1" ;;*) echo "File $1 can not be uncompressed with smartzip";;esac●编写脚本dirfiles,测试其功能。
linux shell实验报告
linux shell实验报告《Linux Shell实验报告》摘要:本实验报告主要介绍了在Linux操作系统中使用Shell进行实验的过程和结果。
通过实验,我们深入了解了Shell的基本概念、常用命令和操作技巧,同时掌握了Shell脚本编写和执行的方法。
实验结果表明,Shell在Linux系统中具有重要的作用,能够提高工作效率和操作便利性。
一、实验目的本实验旨在通过实际操作,加深对Linux Shell的理解和掌握,探索Shell在Linux系统中的应用和作用。
二、实验内容1. Shell的基本概念在实验中,我们首先了解了Shell的基本概念,包括Shell是什么、其作用和特点等内容。
通过实际操作,我们发现Shell是一种命令行解释器,能够接收用户输入的命令并将其转化为操作系统能够理解的指令,从而实现对系统资源的管理和控制。
2. 常用Shell命令在实验中,我们学习了一些常用的Shell命令,如cd、ls、mkdir、rm等,以及它们的用法和功能。
通过实际操作,我们发现这些命令能够帮助我们在Linux 系统中进行文件和目录的管理,实现对系统资源的快速访问和操作。
3. Shell脚本编写和执行在实验中,我们还学习了如何编写和执行Shell脚本。
通过实际操作,我们发现Shell脚本能够帮助我们实现对一系列命令的批量执行,从而提高工作效率和操作便利性。
三、实验结果通过实验,我们深入了解了Shell的基本概念、常用命令和操作技巧,同时掌握了Shell脚本编写和执行的方法。
实验结果表明,Shell在Linux系统中具有重要的作用,能够提高工作效率和操作便利性。
四、结论本实验通过实际操作,加深了对Linux Shell的理解和掌握,探索了Shell在Linux系统中的应用和作用。
通过实验,我们发现Shell在Linux系统中具有重要的作用,能够提高工作效率和操作便利性,对于Linux系统的管理和维护具有重要的意义。
网络用户管理实验报告(3篇)
第1篇一、实验目的本次实验旨在让学生了解网络用户管理的概念、方法和技术,掌握Linux系统中用户和用户组的管理方法,熟悉图形界面和命令行界面操作,并能根据实际需求进行用户和用户组的管理,提高网络管理员的工作效率。
二、实验环境1. 操作系统:Linux2. 网络设备:路由器、交换机、PC等3. 实验软件:Linux操作系统、网络管理工具等三、实验内容1. 用户和用户组的概念用户:在Linux系统中,用户是指可以登录系统并使用系统资源的实体。
每个用户都有一个唯一的用户名和密码,以及对应的UID(用户标识符)。
用户组:用户组是一组具有相同权限的用户集合。
每个用户可以属于一个或多个用户组,通过用户组可以简化权限管理。
2. 用户和用户组的管理方法(1)图形界面管理1)登录Linux系统,进入图形界面。
2)打开“系统管理”菜单,选择“用户和组”。
3)在用户和组管理界面,可以查看、添加、删除、修改用户和用户组。
(2)命令行界面管理1)登录Linux系统,进入命令行界面。
2)使用以下命令进行用户和用户组的管理:a. 添加用户:`useradd [选项] 用户名`b. 删除用户:`userdel [选项] 用户名`c. 修改用户密码:`passwd [选项] 用户名`d. 查看用户信息:`id [选项] 用户名`e. 添加用户组:`groupadd [选项] 组名`f. 删除用户组:`groupdel [选项] 组名`g. 查看用户组信息:`groupmod [选项] 组名`3. 实验步骤(1)在Linux系统中创建一个名为“testuser”的新用户,并设置密码。
(2)将“testuser”添加到“testgroup”用户组中。
(3)修改“testuser”的密码。
(4)查看“testuser”和“testgroup”的信息。
(5)删除“testuser”和“testgroup”。
四、实验结果与分析1. 成功创建了名为“testuser”的新用户,并设置了密码。
shell系统实验报告
shell系统实验报告《Shell系统实验报告》摘要:本实验通过对shell系统的学习和实践,对shell脚本编程进行了深入的研究和探讨。
通过实验,我们深入了解了shell系统的基本概念、语法和功能,并通过实际编程实践加深了对shell脚本的理解和掌握。
本实验报告将对实验过程、实验结果和实验感想进行详细的介绍和分析。
一、实验目的通过本次实验,我们的主要目的是深入了解shell系统的基本概念和语法,掌握shell脚本编程的基本方法和技巧,提高对Linux系统的操作和管理能力。
二、实验过程1. 学习shell系统的基本概念和语法规则;2. 编写简单的shell脚本,包括文件操作、流程控制、函数定义等;3. 运行和调试编写的shell脚本,检验脚本的正确性和可靠性;4. 分析实验结果,总结实验感想。
三、实验结果通过本次实验,我们深入了解了shell系统的基本概念和语法规则,掌握了shell 脚本编程的基本方法和技巧。
我们成功编写了一些简单的shell脚本,包括文件操作、流程控制、函数定义等,通过运行和调试这些脚本,我们验证了它们的正确性和可靠性。
实验结果表明,我们对shell系统有了更深入的认识和理解,对Linux系统的操作和管理能力得到了提高。
四、实验感想通过本次实验,我们对shell系统有了更深入的认识和理解,对Linux系统的操作和管理能力得到了提高。
我们深刻体会到了shell脚本编程的重要性和实用性,相信在今后的工作和学习中,我们会更加熟练地运用shell系统,提高工作效率和解决实际问题。
同时,我们也意识到了自己在shell系统方面的不足之处,今后需要进一步学习和实践,不断提高自己的技能水平。
综上所述,本次实验对我们的学习和成长都具有重要意义,我们将继续努力学习和提高自己,在shell系统和Linux系统方面取得更大的进步和成就。
操作系统上海大学实验
第一部分《操作系统(一)》课程实验实验一Linux操作系统基本命令一.实验目的1. 了解Linux运行环境,熟悉交互式分时系统、多用户环境的的运行机制。
2. 练习Linux系统命令接口的使用,学会Linux基本命令、后台命令、管道命令等命令的操作要点。
二.实验环境复习操作系统中相关的用户接口概念。
查阅Linux中Shell的资料,它既是一个命令解释程序,又是一个程序设计语言。
熟悉本《实验指导》第二部分,从中你可以学会Shell的一般命令。
三.实验内容通过终端或虚拟终端,在基于字符的交互界面中进行Shell的基本命令的操作。
四.操作过程查看信息命令文件操作命令文件链接的意思——在文件之间创建链接。
作用——给系统中u、已有的某个文件指定另外一个可用于访问它的名称。
对于新的文件名,我们可以为其指定不同的访问权限,以控制对信息的共享和安全性问题。
目录操作思考:Linux文件类型有哪几种?文件的存取控制模式如何描述?文件类型有普通文件(~)、目录文件(d)、块设备特别文件(b)、字符设备特别文件(c)、命名管道文件(p)等。
“存取控制模式”指对不同用户分配不同的操作权。
Linux文件系统将用户分为3类,即文件主、同组人、其他人。
每种人可以执行3种操作,r,w,x。
修改文件属性不能,文件已经不属于本个用户。
进程管理命令思考:系统如何管理系统中的多个进程?进程的家族关系是怎样体现的?有什么用?在linux系统上运行任何东西,每个用户的工作、每个系统监控程序等等都是已进程形式运行的。
因此进程管理师linux系统管理非常重要的一个方面。
交互式进程:一个由shell启动控制的进程,可在前台或后台运行;批处理进程:与终端无关,安排在指定时刻完成一系列进程;守护进程:在引导系统时动,以执行即时的操作系统任务。
当用户管理进程时,必须用到PID号。
实验二用户界面与Shell 命令一实验要求(1)(2)(3)(4)(1)掌握图形化用户界面和字符界面下使用Shell 命令的方法。
shell命令总结实验报告
shell命令总结实验报告shell 命令总结第⼀章实验思路1 运⾏环境VMware软件、CentOS 7、MobaXterm第⼆章实验⽬的1 掌握Linux的使⽤。
2 掌握shell常⽤命令。
3 掌握MobaXterm软件的使⽤第三章实验步骤Shell:多任务多⽤户系统3.1 终端物理终端:直接连接到的是键盘、⿏标 /dev/console虚拟终端:(/dev/tty)基于物理终端,以软件形式实现的登录⽅式,以ctrl+alt+Fn[1-6],centos 7模拟终端:(/dev/pts/)基于物理终端,以软件形式实现的登陆⽅式,通过ssh、telent远程登录的、(可以有很多个,⽆穷多个),在图形界⾯打开的命令⾏3.1.1 终端交互式接⼝GUI:图形界⾯,GNOME,KDE, XFCECLI: 命令⾏,shell3.2 shell 应⽤程序/bin/sh/bin/bash ⽐较常⽤shell,跟随⽤户启动的独⽴程序/usr/bin/sh/usr/bin/bash/bin/tcsh/bin/csh3.3 命令提⽰符#:管理员使⽤的命令提⽰符$: 普通⽤户使⽤的命令提⽰符3.4 命令3.4.1 shell 内嵌命令,执⾏效率⾼,常驻内存shell外部命令,根据需要执⾏which whereis 查找外部命令的位置3.4.2 帮助⽂档help,主要针对内嵌man(manual),主要针对外部命令3.4.3 主要命令1. echo $SHELL 查看当前使⽤的shell程序,当系统登录shell时默认使⽤的是/bin/bash2. exit 退出当前shell3. cat /etc/shells查看设备安装的所有shell程序4. pstree 查看进程树5. tty 查看登录⽅式 TTY查看登陆⽅式,tty1说明是在终端上登陆的。
pts说明是远程登陆的,0说明为从Window上登陆的。
6. type 查看是内部命令还是外部命令如下,查看cd 和ls命令7.enable -a 查看所有内嵌命令8. which 查看外部命令位置(以及帮助信息)9. whereis 查看外部命令位置10. man 查看外部命令使⽤说明,如man ls(ls 为外部命令)11. help 查看内部命令的使⽤说明,如help cd( cd 为内部命令),当⽤help查看ls这个外部命令时,是查询不出来的12. whatis 查看和更新数据库信息(帮助⽂档)1. ctrl+c 终⽌shell命令第四章问题解决没有注意到⼀些路径的设置,然后出现了些错误或者命令没执⾏成功。
Linux shell实验
学生课程实验报告书课程:《Linux操作系统》11 级计通系计算机科学与技术专业 1 班学号: 1130030127姓名:陈志伟指导教师:熊保平2013—2014学年第 1 学期一、实验项目:简单shell命令操作二、实验日期:2013年10月24日三、实验原理:字符界面下熟悉图形界面的转换、简单shell命令、输入输出重定向、文本编辑器vi的使用;四、实验仪器:PC机Redhat网络操作系统五、实验步骤(纸张不够写可另外加纸并应装订):1.将图形化用户界面转换成虚拟终端,并将虚拟终端转换成图形化用户界面实验代码:由Crtl+Alt+F1到Crtl+Alt+F6(将图形化界面切换到字符类型的虚拟终端)。
扩展:Alt+F1到Alt+F7是从字符界面的虚拟终端切换其他的虚拟终端。
Alt+F7将字符界面的虚拟终端切换到图形化的虚拟终端。
实验截图:图像化界面字符界面的虚拟终端2.请尝试字符界面下注销、重启、关机命令。
实验代码:注销:exit或者Crtl+D重启:reboot或者shutdown –r +限定时间(now或者具体时间)关机: halt或者shutdown –h +限定时间(now或者具体时间)实验截图:注销:进入一个新的界面重启:关机:扩展:可以键入Crtl+c取消所输入的关机重启命令。
3.用date命令将系统时间设置为2012年3月17日8时44分。
实验代码与截图:当前时间:修改后的时间:4.用cal命令查询你出生日期是星期几。
实验代码与截图:说明:外部键入出生日期年份以及日期,用cal命令查询当前的月份表,查询出生日期的星期。
5.c d命令将工作目录转换为/boot/grub,并用返回用户主目录。
实验代码与截图:说明:外部键入cd /boot/grub进入指定的文件目录,键入cd返回用户主目录。
6.显示/root文件夹下所有文件和目录(包括隐含文件和子文件夹下内容)实验代码与截图:说明:外部键入ls –a查询主目录下的所有文件和目录(包括隐含文件和子文件夹下内容)。
操作系统实验报告
操作系统实验报告专业:软件工程姓名:李程星学号:2011221104220092实验一操作系统的用户界面LINUX操作系统提供了图形用户界面和命令行界面,本实验主要熟悉命令行界面,为后续的实验编程做准备。
一、系统启动1. 开机,选择进入Linux系统,约40秒后系统启动成功,系统提示输入用户名:user输入口令:111111 然后进入Linux系统桌面。
2.进入Linux命令行方式单击小红帽图标,选择“系统工具”,单击“终端”图标,出现Linux的shell提示符.....@......$,,即可输入命令。
实验二进程管理一、实验目的(1)加深对进程概念的理解,明确进程和程序的区别。
(2)进一步认识并发执行的实质。
二、实验内容1、进程的创建执行下面的程序,分析执行的结果。
#include <stdio.h>main(){ int i;printf("just 1 process.\n");i=fork();if (i==0)printf("I am child.\n");elseif (i>0)printf("I am parent.\n");elseprintf("fork() failed.\n");printf("program end.\n");}输出结果:just 1 process.I am parent.program end.I am a child.program end.2、进程的同步执行下面的程序,分析执行的结果。
#include <stdio.h>main(){ int i;printf("just 1 process.\n");i=fork();if (i>0){printf("I am parent.\n");wait();}elseif (i==0) {printf("I am child.\n");exit(1);}printf("program end.\n");}输出结果:just 1 process.I am parent.I am child.program end.3、进程的延迟执行下面的程序,分析执行的结果。
shell编程实验
实验三 shell编程实验(一上机时间:任课教师:实验教师:实验成绩:一、实验目的1.了解shell的作用和主要分类。
2.掌握bash的建立和执行方式。
3.掌握bash的基本语法。
4.综合Linux常用命令和vi编辑器的使用,熟练掌握shell脚本编程。
二、实验注意事项实验室内的实验环境与系统是共用设施,请不要在系统内做对系统或对其他用户不安全的事情。
要求每个同学登录后系统后,要在自己的家目录下创建一个属于自己的子目录(以自己(拼音)名字或学号)。
以后所有工作都要在自己的目录内进行。
建议以后的实验都在同台计算机上做,这样可以保持连续性。
三、实验内容1.利用vi 建立一个脚本文件,该文件在用户输入年、月之后,自动打印数出该年该月的日历。
然后以3种不同方式执行该脚本,如有不能执行情况,请说明原因。
yan@ubuntu:~$ cat >timeecho "please inpute the mounth"read monthecho "please inpute the year"read yearcal $month $year2.编程提示用户输入两个单词,并将其读入,然后比较这两个单词,如果两个单词相同则显示“Match ”,并显示“End of program ”,如果不同则显示“End of program ”。
yan@ubuntu:~$ cat >bijiaoecho -n "please inpute word1:"read word1echo -n "please inpute word2:"read word2if test "$word1" = "$word2"thenecho "Match"fiecho "End of program"3.修改上述程序,编程提示用户输入两个单词,并将其读入,然后比较这两个单词,如果两个单词相同显示“Match ”,不同则显示“Not match ”,最后显示“End of program ”。
linux操作系统实验报告
LINUX操作系统实验报告姓名班级学号指导教师2011 年05月16 日实验一在LINUX下获取帮助、Shell实用功能实验目的:1、掌握字符界面下关机及重启的命令。
2、掌握LINUX下获取帮助信息的命令:man、help。
3、掌握LINUX中Shell的实用功能,命令行自动补全,命令历史记录,命令的排列、替换与别名,管道及输入输出重定向.实验内容:1、使用shutdown命令设定在30分钟之后关闭计算机.2、使用命令“cat /etc/cron.daliy"设置为别名named,然后再取消别名。
3、使用echo命令和输出重定向创建文本文件/root/nn,内容是hello,然后再使用追加重定向输入内容为word.4、使用管道方式分页显示/var目录下的内容。
5、使用cat显示文件/etc/passwd和/etc/shadow,只有正确显示第一个文件时才显示第二个文件.实验步骤及结果:1.用shutdown命令安全关闭系统,先开机在图形界面中右击鼠标选中新建终端选项中输入命令Shutdown -h 302、使用命令alias将/etc/cron.daliy文件设置为别名named,左边是要设置的名称右边是要更改的文件。
查看目录下的内容,只要在终端输入命令即可。
取消更改的名称用命令unalias 命令:在命令后输入要取消的名称,再输入名称。
3.输入命令将文件内容HELLO重定向创建文本文件/root/nn,然后用然后再使用追加重定向输入内容为word。
步骤与输入内容HELLO一样,然后用命令显示文件的全部内容。
4。
使用命令ls /etc显示/etc目录下的内容,命令是分页显示。
“|”是管道符号,它可以将多个命令输出信息当作某个命令的输入.5实验二文件和目录操作命令实验目的:1、掌握LINUX下文件和目录的操作命令,如pwd、cd、ls、touch、mkdir、rmdir、cp、mv、rm等。
实验二 linux基本命令的使用
实验二linux基本命令的使用一、实验目的熟练掌握linux基本命令的使用二、实验设备1)PC机一台2)实验箱一台3)虚拟机vmware,ubantu10三、实验讲解1、登录用户登录分两步:Step1:输入用户的登录名Step2:输入用户的口令当用户正确的输入用户名和口令后,就能合法的进入系统。
屏幕显示:[root@loclhost/root] #这时就可以对系统做各种操作了。
超级用户的提示符是“#”,其他用户的提示符是“$”。
2、系统终端的启动在启动Linux桌面系统后,Shell已经在后台运行起来了,但并没有显示出来。
如果想让它显示出来,按如下的组合键就可以:<Ctrl> + <Alt> + <F2>组合键中的F2可以替换为F3、F4、F5、F6。
如果要回到图形界面,则按如下组合键:<Ctrl> + <Alt> + <F7>另外,在图形桌面环境下运行“系统终端”也可以执行Shell命令,与用组合键切换出来的命令行界面是等效的。
“系统终端”启动后是一个命令行操作窗口,可以随时放大缩小,随时关闭,比较方便,推荐使用。
启动“系统终端”的方法是:【开始】→【应用程序】→【附件】→【系统终端】就是系统终端的界面。
该软件允许建立多个Shell客户端,它们相互独立,可以通过标签在彼此之间进行切换。
3、系统的关闭在Linux系统中,普通用户是无权关闭系统的!只有root用户才能够关闭它。
当然如果你是按关机按钮则另当别论。
我们可以通过以下几种方法实现:1) 按下CTRL+ALT+DEL组合键,这样系统将重新启动;2) 执行reboot命令,这样系统也将重新启动;3) 执行shutdown -h now命令,这样系统将关闭计算机;4) 执行halt命令,可以关闭计算机。
4、linux命令基本格式Linux命令的组成部分包括:●命令字●命令选项●命令参数命令格式举例如下图5、基本命令ls:显示当前目录下的所有文件和目录。
计算机实验报告
(10)使用free命令查看内存资源的使用情况,记录结果。
(11)使用man获取tar和gzip的帮助信息,尝试将test目录下的文件打包并压缩,然后到另外一目录tmp下解包,写出这几条命令。
(12)执行“ls–l>tmp”,查看这条命令的执行会出现什么结果。解释:将ls–l输出的结果输出重定向到temp文件中。
Gcc–olist3_1list3_1.c
Gcc–olist3_2list3_2.c
(3)仔细观察这两个程序,比较标准C的文件操作和Linux的系统调用open、read、write等的使用区别。
答:一个是底层的系统调用,另一个是库函数调用,其效率略有差距,同时参数也不同。
(4)按照说明重新修改程序3-2,并使用time命令察看程序执行的时间效率上有何区别。
err_exit("filewritebuf2error!");
fclose(fp);
}
//程序清单3-4
#include<stdio.h>
#include<unistd.h>
#include<fcntl.h>
#include<sys/stat.h>
case$CHOICEin
1)ls-l|awk'/^d/{print$8}'
;;
2)file_run
;;
3)uers
;;
H|h)
cat<<aaa
Thisisthehelpscreen,nothinghereyettohelpyou!
aaa
;;
Q|q)exit0
LinuxShell脚本实验
还有很多提示符和符号在编辑中的使用并不熟悉,有时还会再查书获取其用法, 因此我觉得我对书本和老师的课件掌握的还是不够熟悉,因此我认为自己应该熟悉熟 悉课本尤其是老师课件的内容,起码将老师讲授的全部掌握,然后在拓宽一下自己的 知识,对 Linux 有更深的理解和掌握。
为:求费波纳奇数列的前10项及总和。
二、实验完成
1.编写脚本文件sum.sh,存放在/home/cauc/scripts目录下。脚本功能为:计
算从1加到100的和并返回结果。
程序具体内容如下: #!/bin/bash #Get the sum of 1 to 100 sum=0 for((i=1;i<=100;i++)) do
sum=$(($sum+$i)) done echo “The total number is $sum.”
2.编写脚本文件Fibonacci.sh,存放在/home/cauc/scripts目录下。脚本功能
为:求费波纳奇数列的前10项及总和。
程序具体内容如下: #!/bin/bash #list the first ten numbers of Fibonacci an count them fun2() {
《Linux 操作系统》
实验报告
实验名称: 实验二:Shell 脚本实验
学 号: 姓 名:
提交日期:
任课教师:
一、 实验题目
Shell脚本实验
1.编写脚本文件sum.sh,存放在/home/cauc/scripts目录下。脚本功能为:计算
操作系统课内实验报告
.. 西安交通大学实验报告操作系统实验报告2130505133计算机36班操作系统实验实验一:用户接口实验实验目的1)理解面向操作命令的接口Shell。
2)学会简单的shell编码。
3)理解操作系统调用的运行机制。
4)掌握创建系统调用的方法。
操作系统给用户提供了命令接口和程序接口(系统调用)两种操作方式。
用户接口实验也因此而分为两大部分。
首先要熟悉Linux的基本操作命令,并在此基础上学会简单的shell 编程方法。
然后通过想Linux内核添加一个自己设计的系统调用,来理解系统调用的实现方法和运行机制。
在本次实验中,最具有吸引力的地方是:通过内核编译,将一组源代码变成操作系统的内核,并由此重新引导系统,这对我们初步了解操作系统的生成过程极为有利。
实验内容1)控制台命令接口实验该实验是通过“几种操作系统的控制台命令”、“终端处理程序”、“命令解释程序”和“Linux操作系统的bash”来让实验者理解面向操作命令的接口shell和进行简单的shell编程。
➢查看bash版本。
在shell 提示符下输入:$echo $BASH_VERSION我们的版本是4.3.42(1)-release(2)建立bash 脚本,输出Hello word在编辑器中输入以下内容#!/bin/bashecho Hello World!执行脚本使用指令:$./script➢编写bash脚本,统计/my目录下c语言文件的个数通过bash 脚本,可以有多种方式实现这个功能,而使用函数是其中个一个选择。
在使用函数之前,必须先定义函数。
进入自己的工作目录,编写名为count 的文件脚本程序:#! /bin/bashfunction count{echo –n " Number of matches for $1: " #接收程序的第一个参数ls $1|wc –l #对子程序的第一个参数所在的目录进行操作}将count 文件复制到当前目录下,然后在当前目录下建立文件夹,在my 目录下建立几个c 文件,以便用来进行测试2)系统调用实验该实验是通过实验者对“Linux操作系统的系统调用机制”的进一步了解来理解操作系统调用的运行机制;同时通过“自己创建一个系统调用mycall()”和“编程调用自己创建的系统调用”进一步掌握创建和调用系统调用的方法。
LINUX_shell程序编程实验报告
LINUX 实验报告专业:班级:学号:姓名:报告时间:实验一 Shell编程一.实验名称:考勤模拟shell程序设计二.实验目的:理解Shell程序的设计方法;熟悉Shell程序的编辑、运行、调试方法与过程。
三.实验内容:考勤模拟Shell程序设计用shell设计一个模拟考勤程序,实现如下功能选择界面:1:上班签到2:下班签出3:缺勤信息查阅考勤程序运行后,提示用户输入上述功能选择,并验证用户输入的用户名和密码;用户信息保存在userinfo.dat中。
如果是上班签到,记录签到信息,如果签到时间大于上午8时,则提示用户迟到,并记录该迟到信息到check.dat中。
如果是下班签出,记录签出信息,如果签出时间小于下午6时,则提示用户早退,并记录该早退信息到check.dat。
如果用户选择确信信息查询,则将check.dat中对应的用户迟到早退的信息查询出来并显示。
用户选择功能执行完,Shell程序继续回到功能选择界面等待下一个用户进行操作。
四.实验要求:1、掌握Shell程序的编辑、运行、调试方法2、完成实验内容要求是现的功能3、撰写实验报告五.试验运行代码:6、试验运行结果:六.实验心得学到了一些有关linux 的知识,还亲自参加了linux的安装party, 这些都让我对产生了了解和掌握linux的愿望。
在这方面,我只是个初学者,我希望跟我一样抱着学习linux 的心态但不知如何学习这方面技术而感到无从下手的初学者在看了这篇文章后,能够找到深入了解linux 的方向和办法。
以下就是学习linux的一个循序渐进的过程一.起步你应该为自己创造一个学习linux的环境--在电脑上装一个linux或unix北美用redhat,欧洲用SuSE,桌面mandrake较多,而debian是技术最先进的linux 开发人员中用debian的最多,其次是redhat,从全球linux各应用领域市场份额来看无疑redhat是最多的它易于使用和安装,我们没有必要把时间浪费在“装系统”上而应集中精力学习最有用的东西。
操作系统实验一
操作系统实验一As a person, we must have independent thoughts and personality.本科实验报告操作系统课程名称:学号:姓名:专业:班级:指导教师:课内实验目录及成绩信息技术学院实验(实验一)1 实验名称:基本shell命令及用户管理2 实验目的掌握安装Linux操作系统的方法。
掌握Linux操作系统的基本配置。
了解GNOME桌面环境。
掌握基本shell命令的使用。
3 实验准备下载VMware Workstation虚拟机软件(版本不限)。
准备Linux操作系统的安装源(内核版本和发行版本均不限)。
注:实验准备、实验内容和作为回家作业布置,同学们利用课余时间可在私人计算机上完成。
4 实验要求、步骤及结果安装虚拟机软件。
【操作要求】安装VMware Workstation虚拟机软件,并填写以下4.1.1和的内容。
4.1.1【VMware Workstation虚拟机版本号】4.1.2【主要配置参数】安装Linux操作系统。
【操作要求】安装Linux操作系统,版本不限。
Linux发行版本:Linux内核版本:【主要操作步骤:包括分区情况】1、创建一台虚拟机安装操作系统时客户机操作系统选择Linux2、修改虚拟机的安装路径。
3、建一个新的虚拟磁盘,磁盘的空间20GB,并且将单个文件存储虚拟磁盘。
4、设置分区完毕,安装虚拟机了解Linux操作系统的桌面环境之一GNOME。
【操作要求】查看桌面图标,查看主菜单,查看个人用户主目录等个人使用环境。
【操作步骤1】桌面图标【操作步骤2】主菜单【操作步骤3】个人用户主目录【操作步骤4】启动字符终端【操作步骤5】注销[root@localhost~]# exit【操作步骤6】重启系统[root@localhost~]# reboot【操作步骤7】关闭[root@localhost~]# halt【回答问题】简述Windows桌面环境与Linux桌面环境的主要区别。
《操作系统》实验报告(2)
c.将subdir目录的读权限去掉,看看是否能用ls命令看到其中内容?
权限不够
(三)Shell程序设计
1.上机编辑、执行实验内容中的例1~例6过程,写出每个脚本(例1~例5)的功能和执行结果;
然后把t01.txt复制一个新文件t03.txt,catt01.txt>t02.txt;
用cat命令将f01.txt的内容追加到t01.txt的末尾,catf01.txt>> t01.txt;
再用diff命令比较t01.txt,t02.txt和t03.txt,比较t01.txt,t02.txt:diff t01.txt t02.txt,结果是否相同:__相同___;比较t01.txt,t03.txt:diff t01.txt t03.txt,结果是否相同:不相同;比较t02.txt,t03.txt:diff t02.txt t03.txt,结果是否相同:不相同。出现上述结果的原因是:______________________________________________________________________________。
2.修改例5,使脚本中不出现break循环控制语句;
3.编写一个Shell过程完成如下功能:
a.合并两个$1、$2文件为$3,并显示内容。
b.如果缺少$3,那么先报告缺少$3,将合并后的内容输出到totaltext.txt,并显示内容。
c.如果缺少$2、$3那么先报告缺少$2、$3,只显示$1的内容。
b.用ln命令给t03.txt建立一个符号链接t04.txt,ln–st03.txt t04.txt;用cat命令看看t04.txt,___cat t04.txt_____;然后删去t03.txt,___rm t03.txt____;再用cat命令看看t04.txt,___cat t04.txt___;结果是:___t04.txt为空____
Linux操作系统实验报告1
实验Linux shell基本命令使用实验目的:熟悉Linux操作系统环境,掌握Linux的基本命令。
实验提示:1、Linux命令行的语法结构:$ command [[-]option(s)] [option argument(s)][command argument(s)]含义:●$:linux系统提示符,您的linux系统可能是其他的提示符●Command:linux命令的名字●[[—]option(s)]:改变命令行为的一个或多个修饰符,即选项●[option argument(s)] :选项的参数●[command argument(s)]:命令的参数2、登录Linux系统的方式:(1)基于文本的界面的连接到Linux系统的方式有:●局域网连接:一般使用远程登录软件通过连接到局域网的一台Linux主机或服务器上。
在Windows下使用的远程登录软件有SSH、telnet等,在http://www.ssh。
com/下载SSH软件。
●因特网连接:因特网连接与局域网连接相似。
因特网中的Linux服务器很多,如:http://lab.lpicn。
org,ssh的设置:✓host:,user:open,port:22,password:open123✓host:lab。
lupa。
cn,user: lab, port:22,password:lab●独立连接:用户使用一台装有Linux系统的计算机,使用文本的界面.当使用以上三种方式连接Linux系统时,需要向系统输入正确的用户名和口令.在成功登录到Linux计算机后,屏幕会出现一个诸如“$" (有可能是其他的符号)的shell提示符。
接着用户可以使用各种各样的linux命令了。
(2)基于图形用户界面:●用户使用一台装了GNOME或KDE图形桌面的Linux系统,可以使用图形界面的登录窗口登录到系统中。
●使用Xmanager等软件,在windows下登录到Linux,可以使用linux的图形界面。
操作系统上机实验报告
5.在主菜单里选择系统工具选择系统监视器来监视系统性能。
评语:
日期:年月日
实验五:vi的基本操作
实验目的:
1.熟悉并掌握vi命令模式、文本编辑模式和最后行模式三种工作模式之间的转换方法。
2.掌握利用vi新建和保存文件;熟悉光标的移动,文本的插入与删除等操作。
3.掌握字符串替换;行的复制、移动、撤消和删除等操作。
2.打开f2文件并显示行号。
3.在f2文件的第一行后插入如下一行内容:“With the development of
4.将文本中所有的“eyeballs”用“eye-balls”替换。
5.把第二行移动到文件的最后,删除第一和第二行并恢复删除,并不保存
6.复制第二行,并添加到文件的最后,删除第二行,保存修改后退出vi。
实验内容:
1.利用vi新建文件f2,内容为:
How to Read Faster
When I was a schoolboy I must have read every comic book ever published. But as I got older, my eyeballs must have slowed down or something I mean, comic books started to pile up faster then I could read them!
14.重复上一步操作。
15.查看刚执行过的5个命令。
实验步骤:
1.先安装VMwareWorkstation。安装后,双击图标弹出界面,在界面上单击新建虚拟机,新建一个Linux的虚拟机,按界面提示一步一步完成操作。注意:(安装过程ISO镜像操作的使用)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验二用户界面与Shell 命令实验环境:Linux 环境实验目的:(1)掌握图形化用户界面和字符界面下使用 Shell 命令的方法。
(2)掌握 ls、cd 等 Shell 命令的功能。
(3)掌握重定向、管道、通配符、历史记录等的使用方法。
(4)掌握手工启动图形化用户界面的设置方法。
实验内容:1.图形化用户界面下的 Shell 命令操作操作要求1:显示系统时间,并将系统时间修改为2011 年9 月17 日零点。
操作过程:(1)启动计算机,以超级用户身份登录图形化用户界面;用户名为root。
(2)依次单击顶部面板的「应用程序」菜单=>「附件」=>「终端」,打开桌面环境下的终端工具。
(3)输入命令“date”,显示系统的当前日期和时间。
(4)输入命令“date 0917********”,屏幕显示新修改的系统时间。
在桌面环境的终端结果:(1)输入命令“date”显示系统当前日期为:2015年4月20号星期一 18:16:12.(2)输入命令“date 0917********”修改系统的时间为2011年9月17号零点。
操作要求2:切换为普通用户,查看 2011 年 9 月 17 日是星期几。
操作过程:(1)输入“su - stu”命令切换当前用户为普通用户 stu。
(2)输入命令“cal 2011”,屏幕上显示出 2011 年的日历,结果:由下图可以看出2011 年 9 月 17 日是星期天。
操作要求3:查看 ls 命令的-s 选项的帮助信息操作过程:方法一:(1)输入“man ls”命令,屏幕显示出手册页中 ls 命令相关帮助信息的第一页,介绍ls 命令的含义、语法结构以及-a、-A、-b 和-B 等选项的意义。
(2)使用 PgDn 键、PgUp 键以及上、下方向键找到-s 选项的说明信息。
(3)由此可知,ls 命令的-s 选项等同于--size 选项,以文件块为单位显示文件和目录的大小。
(4)(4)在屏幕上的“:”后输入“q”,退出 ls 命令的手册页帮助信息。
方法二:(1)输入命令“ls --help”,屏幕显示的帮助信息。
(2)拖动滚动条,找到-s 选项的说明信息,由此可知 ls 命令的-s 选项等同于--size 选项,以文件块为单位列出所有文件的大小。
(3)在屏幕上的“:”后输入“q”,退出 ls 命令的手册页帮助信息。
结果:(1)输入man ls命令,显示出手册页中ls命令相关帮助信息的第一页如下:由上图可以看出:ls命令用来查看指定目录下的文件。
其语法结构有是ls [选项] [文件名]。
-a选项表示列出相应目录下的所有文件;(2)使用 PgDn 键、PgUp 键以及上、下方向键找到-s 选项的说明信息。
如上图所示由此可知,ls 命令的-s 选项等同于--size 选项,以文件块为单位显示文件和目录的大小。
(3)输入命令“ls --help”,屏幕显示的帮助信息。
如下图也可以看到ls 命令的-s 选项等同于--size 选项,以文件块为单位显示文件和目录的大小。
操作要求 4:查看/etc 目录下所有文件和子目录的详细信息操作步骤:(1)输入命令“cd /etc”,切换到/etc 目录。
(2)输入命令“ls -al”,显示/etc 目录下所有文件和子目录的详细信息。
结果:输入命令“cd /etc”,切换到/etc目录 ,然后再输入命令“ls -al”,显示/etc 目录下所有文件和子目录的详细信息。
得到结果如下图:2.字符界面下的 Shell 命令操作操作要求 1查看当前目录。
操作步骤(1)启动计算机后默认会启动图形化用户界面,按下 CTRL+ALT+F1 键切换到第 1 个虚拟终端。
(2)输入一个普通用户的用户名(helen)和口令,登录系统。
字符界面下输入口令时,屏幕上不会出现类似“*”的信息,提高了口令的安全性。
(3)输入命令“pwd”,显示当前目录,结果:虚拟终端未登录时显示的第一行信息表示当前使用的 Linux 的发行版本是 CentOS release ,版本号为 6.5,又名Final。
第二行信息显示Linux 内核版本是2.6.32-431.el5.x86_64,以及本机的 CPU 型号是 x86_64。
第三行信息显示本机默认的主机名 pc1。
成功登录系统后,还会显示该用户帐号上次登录系统的时间以及登录的终端号。
输入命令“pwd”,显示当前目录,看到当前目录为:/home/stu操作要求 2用cat 命令在用户主目录下创建一名为f1 的文本文件,内容为:Linux is useful for us all. You can never imgaine how great it is.操作步骤(1)输入命令“cat >f1”,屏幕上输入点光标闪烁,依次输入上述内容。
使用 cat 命令进行输入时,不能使用左右上下方向键,只能用退格键(Backspace)来删除光标前一位置的字符。
并且一旦按下回车键,该行输入的字符就不可修改。
(2)上述内容输入后,按 Enter 键,让光标处于输入内容的下一行,按 CTRL+D 键结束输入。
(3)要查看文件是否生成,输入命令“ls”即可。
(4)输入命令“cat f1”,查看 f1 文件的内容,结果:(5)输入命令“ls”查看文件目录,可以看到f1文件已经生成;输入命令“cat f1”,可以查看 f1 文件的内容即为刚刚输入的内容。
操作要求 3向f1 文件增加以下内容:Why not have a try?操作步骤(1)输入命令“cat >>f1”,屏幕上输入点光标闪烁。
(2)输入上述内容后,按 Enter 键,让光标处于输入内容的下一行,按 CTRL+D 键结束输入。
(3)输入“cat f1”命令,查看 f1 文件的内容,会发现 f1 文件增加了一行。
结果:Shell 命令中可使用重定向来改变命令的执行。
此处使用“>>”符号可向文件结尾处追加内容,而如果使用“>”符号则将覆盖已有的内容。
Shell 命令中常用的重定向符号共三个,如下所示:>:输出重定向,将前一命令执行的结果保存某个文件。
如果这个文件不存在,则将创建此文件;如果这个文件已有内容,则将放弃原有内容。
>>:附加输出重定向,将前一命令执行的结果追加到某个文件。
<:将某个文件交由命令处理。
操作要求 4统计f1 文件的行数,单词数和字符数,并将统计结果存放在countf1 文件。
操作步骤(1)输入命令“wc <f1> countf1”,屏幕上不显示任何信息。
(2)输入命令“cat countf1”,查看 countf1 文件的内容。
结果:其内容是 f1 文件的行数、单词数和字符数信息,即 f1 文件共有 2行,21 个词和 91 个字符。
操作要求 5将 f1 和 countf1 文件的合并为 f 文件操作步骤(1)输入命令“cat f1 countf1 >f”,将两个文件合并为一个文件。
( 2 )输入命令“cat f”,查看 f 文件的内容。
结果:[stu@pc1 ~]$ cat f1 countf1 >f[stu@pc1 ~]$ cat fLinux is useful for us all.. You can never imagine hooow great it is. Why nit have a try?2 21 91操作要求 6分页显示/etc 目录中所有文件和子目录的信息操作步骤(1)输入命令“ls /etc|more”,屏幕显示出“ls /etc”命令输出结果的第一页,屏幕的最后一行上还出现“--More--”字样,按空格键可查看下一页信息,按 Enter 键可查看下一行信息。
(2)浏览过程中按“q”键,可结束分页显示。
结果:管道符号“|”用于连接多个命令,前一命令的输出结果是后一命令的输入。
操作要求 7仅显示/etc 目录中前5 个文件和子目录。
操作步骤输入命令“ls /etc |head -n 5”, 屏幕显示出“ls /etc”命令输出结果的前面5 行。
结果:操作要求 8清除屏幕内容操作步骤输入命令“clear”,则屏幕内容完全被清除,命令提示符定位在屏幕左上角。
结果:3.通配符的使用Shell 命令的通配符包括*、?、[]、-和!,灵活使用通配符可同时引用多个文件方便操作。
* :匹配任意长度的任何字符。
? :匹配一个字符。
[ ] :表示范围。
- :通常与[ ]配合使用,起始字符-终止字符构成范围!:表示不在范围,通常也与[ ]配合使用。
操作要求1:显示/bin/目录中所有以 c 为首字母的文件和目录操作步骤:输入命令“ls /bin/c*”,屏幕将显示/bin 目录中以 c 开头的所有文件和目录结果:操作要求 2显示/bin/目录中所有以 c 为首字母,文件名只有3 个字符的文件和目录操作步骤(1)按向上方向键,Shell 命令提示符后出现上一步操作时输入的命令“ls /bin/c*”。
(2)将其修改为“ls /bin/c??”,按下Enter 键,屏幕显示/bin 目录中以c 为首字母,文件名只有3 个字符的文件和目录。
结果:Shell 可以记录一定数量的已执行过的命令,当用户需要再次执行时,不用再次输入,可以直接调用。
使用上下方向键,PgUp 或PgDown 键,在Shell 命令提示符后将出现已执行过的命令。
直接按Enter 键就可以再次执行这一命令,也可以对出现的命令行进行编辑,修改为用户所需要的命令后再执行。
操作要求 3显示/bin 目录中所有的首字母为c 或s 或h 的文件和目录。
操作步骤输入命令“ls /bin/[csh]*”,屏幕显示/bin 目录中首字母为c 或s 或h 的文件和目录,结果:[csh]*并非表示所有以csh 开头的文件,而表示是以c 或s 或h 的文件。
另外为避免误解,也可以使用[c,s,h]*,达到相同的效果。
操作要求 4显示/bin/目录中所有的首字母是v、w、x、y、z 的文件和目录。
操作步骤输入命令“ls /bin/[!a-u]*”,屏幕显示/bin 目录中首字母是v~z 的文件和目录。
结果:操作要求55重复上一步操作操作步骤输入命令“!!”,自动执行上一步操作中使用过的“ls 见如下内容。
结果:操作要求 6查看刚执行过的5 个命令操作步骤输入命令“history 5”,显示最近执行过的5 个命令。
结果:用户不仅可利用上下方向键来显示执行过的命令;还可以使用history 命令查看或调用执行过的命令。
history 命令可查看到已执行命令在历史记录列表中的序号,可使用“!序号”命令调用,而“!!”命令则执行最后执行过的那个命令。