《Linux系统管理》Shell程序设计实验报告
- 格式:doc
- 大小:546.50 KB
- 文档页数:7
实验二Linux shell程序设计一、实验目的熟悉linux shell 简单程序设计二、实验内容1、变量引用。
在用户主目录下运行如下命令$dir_1=/11/22$echo $dir_1$echo dir_12、数组。
在用户主目录下运行如下命令$city[0]=Beijing$city[1]=Shanghai$city[2]=Tianjin显示city的第二个元素的值$A=(this is an example of shell script)(1)同时显示数组A的第2、4、6个元素的值。
(2)显示所有数组元素的值3、完成书上P106-107中关于read命令的使用的例子。
4、完成书上p108-110例4.7-例4.9三、实验步骤1.输入命令:$dir_1=/11/22$echo $dir_1$echo dir_12.输入命令:$city[0]=Beijing$city[1]=Shanghai$city[2]=Tianjin$echo ${city[2]}$A=(this is an example of shell script)$echo ${A[2]} ${A[4]} ${A[6]}$echo ${A[8]}3.输入命令:$read x y zToday is Monday$echo $z $x $y$read n1 n2 n3First Second Third 1234 abcd$echo $n3$echo $n2 $n1Read n1 n2 n31 2$echo $n3$echo $n1 $n24.4-7:$touch m1.c$vi m1.c按”i”输入:main(){printf(“Begin\n”);}按“Esc”输入“:wq”$cat m1.c$touch m2.c$vi m2.c按”i”输入:main(){printf(“OK!\n”);printf(“End\n”);}按“Esc”输入“:wq”$cat m2.c$touch ex6$vi ex6按”i”输入:#ex6:shell script to combine files and count linescat $1 $2 $3 $4 $5b $6 $7 $8 $9|wc –l#end按“Esc”输入“:wq”$cat ex6$chmod a+x ex6$PATH=$PATH:.$ex6 m1.c m2.c4-8 $touch ex7Vi ex7i#!/bin/bash#ex7:shell script to combine filesand count lines#using command set to set positional paramtersSet m1.c m2.cCat $1 $2 $3|wc -l#end$cat ex7$chmod a+x ex7$PATH=$PATH:.$ex74-9 $touch ex8Vi ex8i#!/bin/bash#ex8:shell script to demonstrate the shift commandEcho $0 $ 1 $2 $3 $4 $5 $6 $7 $8 $8 &9ShiftEcho $0 $ 1 $2 $3 $4 $5 $6 $7 $8 $8 &9Shift 4Echo $0 $ 1 $2 $3 $4 $5 $6 $7 $8 $8 &9#end$cat ex8$chmod a+x ex8$PATH=$PATH:.$ ex8四、实验总结通过这次实验,我懂得了定义SHELL程序设计中的变量,掌握了SHELL 程序中LINUX基本命令的使用,理解了SHELL程序的设计方法,并且熟悉了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系统的管理和维护具有重要的意义。
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 shell实验报告Linux Shell实验报告一、引言Linux Shell是一种命令行解释器,它是Linux操作系统的核心组成部分。
通过Shell,用户可以直接与操作系统进行交互,执行各种命令和程序。
本实验旨在探索Linux Shell的基本用法和功能,以及如何通过Shell脚本实现自动化任务。
二、Shell的基本用法1. 登录Shell在Linux系统中,可以通过终端或控制台登录Shell。
输入用户名和密码后,即可进入Shell环境。
2. Shell命令的基本格式Shell命令由命令名称和参数组成。
命令名称用于指定要执行的操作,而参数则用于指定操作的具体细节。
3. 常用Shell命令(1)ls:列出当前目录下的文件和文件夹。
(2)cd:切换当前工作目录。
(3)mkdir:创建新的文件夹。
(4)rm:删除文件或文件夹。
(5)cp:复制文件或文件夹。
(6)mv:移动文件或文件夹。
(7)cat:查看文件内容。
(8)grep:在文件中搜索指定的字符串。
(9)chmod:修改文件或文件夹的权限。
(10)ssh:通过网络连接到远程服务器。
三、Shell脚本的编写与执行1. Shell脚本的基本结构Shell脚本是一系列Shell命令的集合,可以按照特定的顺序执行。
一个典型的Shell脚本包含以下几个部分:(1)Shebang:指定脚本的解释器。
(2)注释:用于解释脚本的用途和功能。
(3)变量定义:定义脚本中使用的变量。
(4)函数定义:定义脚本中使用的函数。
(5)主体代码:包含实际执行的命令。
2. Shell脚本的执行要执行一个Shell脚本,可以使用以下命令:```shellchmod +x script.sh./script.sh```首先,使用chmod命令给脚本添加可执行权限。
然后,使用./命令来执行脚本。
3. Shell脚本的实例以下是一个简单的Shell脚本示例,用于统计一个文件中指定字符串的出现次数:```shell#!/bin/bash# 统计指定字符串的出现次数count=$(grep -o "keyword" file.txt | wc -l)echo "出现次数:$count"```此脚本通过grep命令在file.txt文件中搜索关键字"keyword",并使用wc命令统计匹配行的数量。
linux实验报告shell编程1. 什么是Linux Shell编程?Linux Shell编程是一种在Linux操作系统上使用Shell脚本开发的编程语言。
Shell编程是通过编写一系列Shell脚本来完成特定任务或自动化操作的过程。
Shell是操作系统的一种命令行接口,用户可以通过Shell来执行各种命令和操作系统功能。
Shell脚本是一种文本文件,其中包含了一系列Shell命令,用于定义要执行的任务和操作。
2. 为什么要学习Linux Shell编程?学习Linux Shell编程有以下几个重要原因:2.1 自动化操作:Shell编程可以帮助我们自动执行各种任务和操作,提高工作效率。
通过编写脚本,可以自动化执行常见的操作,如文件处理、数据备份、软件安装等,节省大量时间和精力。
2.2 系统管理:Shell编程是系统管理的重要工具。
通过编写脚本,我们可以在Linux系统上进行系统配置、用户管理、进程管理等操作,简化管理流程并提高系统安全性。
2.3 学习编程思维:学习Shell编程可以培养编程思维和解决问题的能力。
编写脚本可以帮助我们理解问题,分析和解决问题,并培养逻辑思维和创造性思维。
3. Shell脚本的基本语法和结构3.1 Shebang:Shell脚本的第一行通常是一个Shebang(井号加叹号),用来指定要使用的Shell解释器。
3.2 注释:使用井号()来注释代码,用于解释代码的作用、用途和注记。
3.3 变量:可以使用变量来存储数据,并在脚本中引用。
变量以美元符号()开头,可以是数字、字符或字符串。
可以使用等号(=)进行赋值,如:var="Hello World"。
3.4 输入输出:使用echo命令将文本输出到终端,使用read命令读取用户输入。
3.5 条件语句:使用if-else语句判断条件并执行对应的代码块。
条件可以使用比较运算符(如大于、小于、等于)和逻辑运算符(如与、或、非)进行判断。
《Linux系统管理与shell编程》实验项目实验一:安装和启动RHEL 6一、实验目的1、掌握光盘安装方式下安装RHEL 6的基本步骤。
2、了解系统中各硬件设备的设置方法。
3、理解磁盘分区的相关知识,并手工建立磁盘分区。
4、启动RHEL 6并进行初始化设置。
二、实验内容1、安装RHEL6在已安装Windows XP的计算机上附加安装RHEL 6。
2、启动RHEL 6启动新安装的RHEL 6并进行初始化设置,添加普通用户hellen,并以hellen用户身份登录GNOME桌面环境。
3、注销用户注销hellen用户4、关机关闭计算机实验二:GNOME桌面环境的基本操作(选作)一、实验目的:1、了解GNOME系统面板的各组成部分及其设置方法。
2、掌握GNOME桌面环境的设置方法。
3、掌握GNOME桌面图标的新建方法。
4、掌握Nautilus文件管理器的使用方法。
5、掌握GNOME中添加和删除应用程序的方法。
6、熟悉汉字输入法的启动与切换。
二、实验内容:1、设置面板设置系统面板的位置,并隐藏面板。
在系统面板上添加、移动和删除对象。
添加和删除面板。
2、设置桌面将桌面背景设置为dragonfly.png图片。
将桌面背景设置为水平渐变的颜色。
设置屏幕保护程序。
3、设置桌面图标新建“我的文档”文件夹图标。
新建文本编辑器gedit的快捷图标(启动器)。
4、使用Nautilus基本文件操作。
显示Linux的目录树结构。
查看隐藏文件5、添加/删除应用程序添加GIMP程序。
删除Windows文件服务器(Samba)程序。
实验三:KDE桌面环境的基本操作(选作)一、实验目的:1、了解GNOME和KDE桌面环境的切换方法。
2、熟悉KDE桌面环境的各组成部分及其基本操作方法。
3、掌握Konqueror文件管理器的使用方法。
4、利用KDE控制中心设置桌面环境。
二、实验内容:1、桌面环境的切换切换到KDE桌面环境。
2、面板的基本操作在KDE面板上增加和删除对象。
实验4 shell 程序设计1.采用shell编程语言(类似C语言),完成(1)请用C语言编写程序,将1-100之间能被3或7整除的数显示出来.实验结果:student@linux-suse:~> ./homework1.sh3 6 7 9 12 14 15 18 21 24 2728 30 33 35 36 39 42 45 48 49 5154 56 57 60 63 66 69 70 72 75 7778 81 84 87 90 91 93 96 98 99end!程序代码:for ((i = 1; i <= 100; i++))doj=$[$i % 3]if test $j -eq 0thenecho -n $iecho -n " "elsej=$[$i % 7]if test $j -eq 0thenecho -n $iecho -n " "fifidoneecho "end!"(2)请用C语言编写程序,从键盘输入年号,屏幕显示是不是闰年,若是闰年则显不“YES!”否则显示“NO!”。
实验结果:student@linux-suse:~> ./homework2.sh清输入年份2012yes!student@linux-suse:~> ./homework2.sh清输入年份1995no!程序代码:echo "清输入年份read yeari=$[$year % 4]if test $i -eq 0thenecho "yes!"elsej=$[$year % 100]if test $j -eq 0thenecho "yes!"elsek=$[$year % 400]if test $k -eq 0thenecho "yes!"elseecho "no!"fififi(3)请用C语言编写程序,将从键盘录入的10个任意数,由低向高排序后显示。
linux shell 实验报告Linux Shell 实验报告一、引言Linux Shell 是一种命令行解释器,它允许用户与操作系统进行交互。
作为一个开源的操作系统,Linux 提供了多种 Shell,如 Bash、Zsh、Ksh 等,每种 Shell 都有其特点和用途。
本实验旨在通过实际操作,深入了解 Linux Shell 的使用和功能。
二、实验目的1. 熟悉 Linux Shell 的基本概念和操作;2. 掌握 Shell 的常用命令和参数;3. 理解 Shell 脚本的编写和执行过程。
三、实验环境本次实验使用的实验环境为 Ubuntu 20.04 LTS 操作系统,使用默认的 Bash Shell。
四、实验内容1. Shell 基本操作在 Linux 系统中,打开终端即可进入 Shell 环境。
Shell 提供了丰富的命令用于文件操作、系统管理等。
以下是一些常用的 Shell 命令示例:- ls:列出当前目录下的文件和子目录;- cd:切换当前工作目录;- mkdir:创建新目录;- rm:删除文件或目录;- cp:复制文件或目录;- mv:移动文件或目录。
2. Shell 变量和环境变量Shell 变量用于存储数据,可以通过赋值和引用来操作变量。
环境变量是一种特殊的 Shell 变量,用于存储系统环境的信息。
以下是一些常用的变量和环境变量示例:- 变量赋值:name="John";- 变量引用:echo $name;- 环境变量:$HOME、$PATH、$USER。
3. Shell 脚本编写与执行Shell 脚本是一种批处理文件,由一系列命令组成,可以实现自动化操作。
以下是一个简单的 Shell 脚本示例:```shell#!/bin/bashname="John"echo "Hello, $name!"```将上述脚本保存为 `hello.sh`,通过 `chmod +x hello.sh` 命令给予执行权限,然后通过 `./hello.sh` 执行脚本。
实验1: SHELL编程实验目的熟悉linux常用命令,为以后的实验打下良好基础;熟悉vi编辑器的使用;了解Shell程序的语法规则,能编写简单的Shell程序。
实验内容1、使用常用的Linux命令,主要包括如下命令:date, mail, write, man, ls, cat, mv, grep, tail, head, cp, wc, pwd, who等;2、使用vi编辑器编辑文件,熟悉vi编辑器的各种操作模式和常用命令。
3、使用vi编辑器编写一段Shell程序,取名为mycal,实现与Linux中cal命令类似的功能,当输入:$mycal [月份名] 年时,屏幕输出指定的年月的月历。
例如:$mycal October 2009屏幕输出2009年10月的月历。
注:参数可以是英文或者是数字。
实验结果1、2、3、实验2:观察Linux的行为实验目的了解Linux proc文件系统;加深对Linux系统的理解;增强Linux系统管理知识。
实验内容在Linux中,proc文件系统提供了一套在用户态检查内核状态和系统特征的机制。
proc文件系统将进程的地址空间、系统的硬件信息、系统相关机制(中断、I/O)等内容全部设置为虚拟的Linux文件,为访问系统内核数据的操作提供接口。
1、以root登录系统,并进入/proc目录,键入ls命令,查看/proc下的内容,同时查看每个文件的读写权限。
2、根据/proc下的信息,回答:CPU的类型和型号、当前Linux版本、从启动到当前时刻所经过的时间、当前内存状态。
实验结果1、2、Cpu类型和型号:当前linux版本:启动时间:内存情况:。
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是最多的它易于使用和安装,我们没有必要把时间浪费在“装系统”上而应集中精力学习最有用的东西。
Linux实验报告(实验四)shell编程实验实验四 shell编程实验(二)班级:姓名:学号:上机时间:年月日任课教师:实验教师:实验成绩:一、实验目的综合Linux常用命令和vi编辑器的使用,熟练掌握shell脚本编程。
二、实验注意事项实验室内的实验环境与系统是共用设施,请不要在系统内做对系统或对其他用户不安全的事情。
要求每个同学登录后系统后,要在自己的家目录下创建一个属于自己的子目录(以自己(拼音)名字或学号)。
以后所有工作都要在自己的目录内进行。
建议以后的实验都在同台计算机上做,这样可以保持连续性。
三、实验内容1. 编写一个脚本,求斐波那契数列的前10项及总和。
num1=1num2=1echo -n “$num1+$num2”sum=2for((i=1;i<=8;i++))dotmp=$(expr $num1 + $num2)echo -n “+$tmp”((num1=num2))((num2=tmp))sum=$(expr $sum + $tmp)doneecho “=$sum”2.编写一个脚本,求一个数的逆序。
echo -n please input num:read numecho -n The num iswhile [ $num -gt 0 ]dosd=$(($num % 10))echo -n "$sd"num=$(($num/10))doneecho3.设计一个Shell程序,在用户主目录下建立一个userdata目录,在此目录下再建立5个目录,即user1~user5,并设置每个目录的权限,其中其他用户的权限为:读;文件所有者的权限为:读、写、执行;文件所有者所在组的权限为:读、执行。
(注意:最后删除自己所建立的目录,恢复原样,以便后面同学做此实验)mkdir -m 754 /home/userdatai=1temp=/home/userdata/userwhile[ $i -le 5 ]domkdir -m 754 $temp$ilet”i=i+1”#done4.用Shell编程,判断一文件是不是普通文件,如果是将其拷贝到/home/student/test 目录下,用命令查看test目录内容,最后再删除test目录。
通过Shell编程中变量的定义和赋值的操作,进行条件测试语句的程序设计、选择结构的程序设计和循环结构的程序设计。
1.编写Shell程序,判断文件是否是符号链接文件,如果是则移动到/temp目录下,否则不做任何处理;代码:#!/bin/bash#filename:linkfileecho "Please input the direction of the file:"read FILENAMEif [ ! -f $FILENAME ];thenecho "$FILENAME is not exist!"exitelseif [ ! -L $FILENAME ];thenecho "$FILENAME is not a symbolic file!"exitelsemv $FILENAME /tempecho "$FILENAME has moved to /temp"fifi实验步骤:使用ln -s item link命令建立符号链接(软链接)文件,如图所示:为Q1.sh设置运行权限,并执行Q1.sh:查看链接文件情况:已经移动至/temp目录2.编写Shell程序,使用select命令生成选择菜单,允许用户在菜单中选择,并基于选择执行相应的命令;代码:#!/bin/bash#filename:selectPS3="Please choose the command:"select cmd in "ls -l" "date + %y" pwd who "cd /root" ps df clear exit do$cmdDone实验步骤:为Q2.sh设置运行权限,并执行Q2.sh:3.编写Shell程序,分别采用while和until循环结构来计算1~50之间所有奇数之和。
shell实验报告Shell实验报告一、实验目的本次实验旨在通过学习和实践Shell编程,掌握Shell脚本的基本语法和使用方法,提高对Linux系统的操作和管理能力。
二、实验环境本次实验使用的操作系统为Ubuntu 20.04 LTS,Shell编程语言为Bash。
三、实验内容1. Shell脚本的编写在实验开始前,我们首先需要了解Shell脚本的基本结构和语法。
Shell脚本是一种批处理脚本语言,它通过解释器执行,可以用来编写一系列的命令和程序,实现自动化的任务。
2. 变量和数据类型在Shell脚本中,我们可以定义变量来存储和操作数据。
变量可以是整数、字符串等不同的数据类型。
通过使用变量,我们可以方便地在脚本中引用和修改数据。
3. 控制流程控制流程是Shell脚本中非常重要的一部分,它可以用来控制程序的执行顺序和条件。
常见的控制流程语句包括if语句、for循环和while循环等。
通过合理使用控制流程,我们可以实现不同的逻辑和功能。
4. 输入输出Shell脚本可以通过读取用户的输入和输出结果来实现交互式的操作。
我们可以使用read命令来获取用户的输入,并通过echo命令来输出结果。
这样可以增加脚本的灵活性和可用性。
5. 函数和模块化函数是Shell脚本中的一种重要的代码组织方式,它可以将一段代码封装为一个独立的功能模块。
通过定义函数,我们可以提高代码的可读性和重用性。
6. 实际应用通过学习Shell脚本的基本语法和使用方法,我们可以将其应用于实际的系统管理和运维工作中。
比如,我们可以编写一个自动备份脚本,定期备份重要的文件和数据;或者编写一个自动化部署脚本,简化软件部署的流程。
四、实验心得通过本次实验,我对Shell脚本的编写和使用有了更深入的了解。
Shell脚本作为一种强大的工具,可以帮助我们简化繁琐的操作,提高工作效率。
同时,学习Shell脚本还可以培养我们的逻辑思维和编程能力。
在实验过程中,我发现Shell脚本的语法相对简单,上手较快。
深圳大学实验报告课程名称:Linux操作系统实验项目名称:Linux上shell程序设计学院:计算机与软件学院专业:软件工程指导教师:冯禹洪报告人:文成学号:2011150259 班级: 2 实验时间:2013-10-08实验报告提交时间:2013-10-30教务处制一、实验目标:1. 熟悉vi编辑器的使用2. 掌握简单的Shell编程2.1. 掌握Shell变量的使用2.2. 掌握Shell表达式的使用2.3. 掌握Shell流程控制语句的使用3. 熟悉Shell程序的执行和跟踪二、实验环境与工件湖边Linux实验室Fedora 13三、实验内容与步骤1. 下面哪个命令会实现将变量V AR1和V AR2相加,并且值存入变量V AR3的功能?( D )(5分)[ $V AR3 = $V AR1 + $V AR2 ]$V AR3 = [ $V AR1 + $V AR2 ]$V AR3 = (( V AR1 + V AR2 ))(( V AR3 = V AR1 + V AR2 ))2. 以下程序的输出是?( D )(5分)#!/usr/bin/shA=1while [ $A -lt 10 ]doB=1while [ $B -lt 10 ]dobreak 2echo "Inner loop"doneecho "Outer loop"doneA.“Inner l oop” 将被打印10次B.“Outer l oop” 将被打印10次.C.“Outer l oop” 将被打印10次.D.什么都没有被打印.3. 请在vi中逐一编辑,修正(如果有误)并执行以下10个shell脚本程序,然后结合所学知识和程序的输出理解各程序中各语句的含义,对各小题附上结果截图。
(每小题5分)3.1. 编写一个简单的回显用户名的shell程序。
#!/bin/bash#filename:dateecho "Mr.$USER,Today is:"echo 'date'echo Whish you a lucky day!3.2.使用if-then语句创建简单的shell程序。
C H A N G Z H O U U N I VE R S I T Y实 验 报 告课程名称: Linux 操作系统实验名称: 实验10、Shell 程序设计(1) 学 生 姓 名: 孙文浩 班 级 计算机141 学 号 14416122学 院(系): 信息数理学院 指 导 教 师: 庄丽华 实验时间: 2016 年 12 月 9 日 实验成绩:实验十、Shell程序设计(1)一、实验要求(1)运用shell的变量、特殊字符、输入输出命令等进行shell脚本的建立与执行。
(2)运用常用的shell程序控制结构语句进行shell程序设计与执行。
二、实验内容和实验步骤1、创建一个简单的列目录和日期的shell 脚本并运行之。
【操作步骤】⑴输入下列命令,创建一个新文件:cat > new_script⑵输入下列行:echo “Your files are:”lsecho “today is”date按回车键将光标移到一个新行,按Ctrl+D键保存并退出。
⑶检查文件内容,确保它是正确的:cat new_script⑷运行脚本,输入它的文件名:new_script该脚本不运行。
⑸输入下列命令,显示文件的权限:ls –l new _script权限表明该文件不是可执行。
要通过简单调用文件名来运行脚本,必须有权限。
⑹输入下列命令,使new_script变成可执行文件。
chmod +x new_script⑺要查看新的权限,输入:ls –l现在拥有文件的读、写和执行权限。
⑻输入新脚本的名字以执行它:new_script所有输入到文件的命令都执行,并输出到屏幕上。
⑼如果接收到错误信息,比如:command not found输入下列命令:./new_script该命令行通知shell到哪里寻找shell脚本new_script,即您的当前目录“.”。
程序运行过程截图如下:2、用Shell 语言编制一Shell 程序,该程序在用户输入年、月之后,自动打印输出该年该月的日历。
《Linux系统管理》Shell程序设计实验报告
(3)编写一个shell脚本,利用位置参数携带一个文件名,判断该文件在当前目录下是否存在且是一个普通文件。
(4)编写一个shell脚本,输入10-30之间的一个数,并判断它是否小于25。
(5)利用case条件语句编写一个shell脚本,提示用户输入一个字符,判断该字符是字母、数字或特殊字符。
(6)编写一个shell脚本,根据键盘可以循环输入学生成绩(百分制),并显示对应的成绩标准(及格和不及格),按“q”键退出,按其他键提示重新输入。
(7)编写一个shell脚本,利用for循环把当前目录下的所有指定的文件复制到指定的目录中,并显示复制后该目录内按文件大小排序的目录文件清单。
编写shell脚本,第一个位置参数为指定的目录,其后指定的位置参数为第一个位置参数指定目录下的文件,显示这些文件的内容。
(8)编写一个shell脚本,完成课本P189页第9题。
(9)编写一个shell脚本,完成课本P189页第10题。
三、实验过程:
1.创建简单shell脚本
(1)
2.shell的输入输出重定向
(1)
(2)
(3)
(4)
(5)
(6)
3.用shell语言编制shell程序
(1)
4.shell变量操作
(1)
(2)
(3)
(4)
(5)
(6)
(7)
5.shell程序控制结构
(1)
(2)
(3)
(4)(5)(6)(7)
(8)(9)(10)
四、实验总结:(实验中遇到的问题及解决方法,心得体会等)
本次实验了解和创建并使用脚本的步骤掌握shell的变量及特殊字符掌握shell的输入输出命令掌握常用shell程序逻辑结构语句。
会创建一个简单的列出目录和日期,会用shell语言编制shell 程序,掌握了一些复杂的命令。
通过这节课实验发现对于shell变量的类型使用,以及相关用户下的具体操作不够明确,Shell是Linux系统中的用户与系统交互的接口,可编程、作为命令解释器;Shell脚本的建立同普通文本文件建立相同,利用vi活cat命令进行操作;且shell变量有环境变量和用户自定义变量。
两者通过相关知识进行操作。