Linux操作系统实验三shell编程

Linux实验三shell 编程
姓名:班级:计科1101班
学号:10170106
一、实验目的
1、掌握Linux 下的C语言编译的基本方法
2、理解make工具的功能,学会编制makefile的方法
二、实验内容
1、利用gcc编译C语言程序,使用不同的选项,观察并分析显示结果
2、编写一个由多文件构成的C语言程序,编制makefile,运行make工具进行维护。

三、主要实验步骤
1、设计一个程序,打印输出输入数字的正弦值。

要求定义属于自己的头文件,并且放在另外的目录中。

使用下列选项进行编译:-I, -E, -c , –o , -l 。

参考教材的P155-158节的内容。

2、针对下面4个C语言程序,main.c, one.c, two.c, public.h.。

写一个makefile 文件,运行make工具进行维护。

public.h 在另外的目录中。

Main.c:
include"public.h"
int main()
{
printf("main ...\n");
show1();
show2();
return 0;
}
One.c
#include"public.h"
void show1()
{
printf("hello, this show1 \n");
}
Two.c
#include"public.h"
void show2()
{
printf("hello, this show2 \n");
}
public.h
#ifndef __MANYCO_MAKEFILE_PUBLIC_1
#define __MANYCO_MAKEFILE_PUBLIC_1
#include<stdio.h>
void show1();
void show2();
#endif
实验代码:
INCDIR=inc
edit:main.o show.o show.o
gcc -o $@ $^
main.o:main.c
gcc -c $^ -o $@ -I${INCDIR} show1.o:show.c
gcc -c $^ -o $@ -I${INCDIR} show.o:show.c
gcc -c $^ -o $@ -I${INCDIR} clean:
rm -r *.o
四、心得体会
我学会makefile的基本写法。

合集下载

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,完成向用户输出“你好!”的问候语。

实验指导书--实验03 Linux Shell编程

实验指导书--实验03 Linux Shell编程

实验三: Linux Shell编程
实验学时: 2
实验类型: 设计
实验要求: 必修
一、实验目的
通过本实验的学习, 使学生掌握Shell编程的基本方法。

二、实验内容
实验内容: Linux Shell实现题目所要求的功能。

三、实验原理、方法和手段

四、实验组织运行要求
以学生自主训练为主的开放模式组织教学
五、实验条件
PC机
六、实验步骤
1.编写一个Shell脚本, 完成以下功能:
1)显示文字“Waiting for a while….”
Vi helloworld
#!/bin/bash
Echo “Waiting for a while….”
2)显示当前目录下面扩展名为”.h”的文件和目录, 并输出重定向到/home/file.txt文件
Find .h
Find .h >>/home/file.txt
提示: 显示文字可使用echo命令, 搜索文件可使用find命令
2.编写一个Shell脚本, 完成以下功能
计算8以内(含8)不是3的整数倍的数字的和
3.编写一个Shell脚本, 在当前目录创建5个目录, 目录的命名形式分别为: dir-1, dir-2, …., dir-5
七、思考题
比较C语言和Shell编程的一些异同点。

八、实验报告
实验预习: 学习shell编程的基本方法
实验记录: 记录解决问题所用的代码和运行结果
实验报告: 提交代码和运行结果
九、其它说明。

Linux shell编程实验作业(含答案)

Linux shell编程实验作业(含答案)

Linux shell实验作业参考1.编写一个Shell脚本,实现输入一个数字,输出该数字的阶乘。

思路:使用for循环,从1到输入的数字进行累乘,最终输出结果。

#!/bin/bashecho "请输入一个数字:"read numfact=1for ((i=1;i<=$num;i++))dofact=$(($fact*$i))doneecho "阶乘为:$fact"2. 编写一个Shell脚本,实现输入一个目录,输出该目录下所有文件名和文件大小。

#!/bin/bash# 获取目录路径read -p "请输入目录路径:" dir_path# 判断目录是否存在if [ ! -d "$dir_path" ]; thenecho "目录不存在!"exit 1fi# 遍历目录下所有文件for file in "$dir_path"/*do# 判断是否是文件if [ -f "$file" ]; then# 获取文件名和大小file_name=$(basename "$file")file_size=$(du -h "$file" | awk '{print $1}')echo "$file_name : $file_size"fidone使用方法:➢将以上代码保存为一个.sh文件,例如:`list_files.sh`➢给该文件添加执行权限:`chmod +x list_files.sh`➢在终端中运行该脚本:`./list_files.sh`,然后输入目录路径即可。

3. 编写一个Shell脚本,实现输入一个字符串,输出该字符串中所有大写字母的个数。

脚本的基本思路是遍历输入的字符串,对于每个字符,判断是否为大写字母,如果是则计数器加一。

实验三 shell编程

实验三 shell编程

实验三 shell编程一、实验名称:shell编程二、实验学时:2学时三、实验目的掌握shell脚本的多种常用的执行方式;熟悉shell编程常用语法格式和变量的使用方法;掌握shell编程中常用的循环语句、分支语句、条件语句的使用方法。

四、实验步骤1.利用gedit编辑器,在当前用户的家目录下建立一个简单的脚本文件file.sh,其中包括date,cal,pwd,ls 等常用命令,然后以不同方式执行该脚本。

(1)采用输入定向到shell脚本的方法执行:输入命令 bash<file.sh(2)不给shell脚本文件可执行权限a)source FileName作用:在当前bash环境下读取并执行FileName中的命令。

该filename文件可以无"执行权限"注:该命令通常用命令“.”来替代。

如:source bash_profile . bash_profile两者等效。

source(或点)命令通常用于重新执行刚修改的初始化文档。

source命令(从 C Shell 而来)是bash shell的内置命令。

点命令(点符号),从Bourne Shell而来,就是顺序的执行文件里的命令而已。

b)sh和bash命令用法: shFileName bash FileName作用:在当前相应的bash环境下新建一个子shell读取并执行FileName中的命令。

该filename文件可以无"执行权限" 。

注:两者在执行文件时的不同,是分别用自己的shell来跑文件。

sh使用“-n”选项进行shell脚本的语法检查,使用“-x”选项实现shell脚本逐条语句的跟踪,可以巧妙地利用shell的内置变量增强“-x”选项的输出信息等。

(3)修改shell脚本的权限为可执行(chmod +x file.sh)a)./的命令用法:./FileName作用:打开一个子shell来读取并执行FileName中命令。

linuxshell编程实验总结

linuxshell编程实验总结

linuxshell编程实验总结Linux Shell编程实验总结在Linux系统中,Shell编程是一种强大的工具,可以帮助用户进行自动化任务、脚本编写和系统管理。

通过学习和实践Shell编程,我深深地体会到了其在提高工作效率和简化任务流程方面的重要性。

在这篇文章中,我将总结我在Linux Shell编程实验中的经验和心得。

一、实验概述在这次Linux Shell编程实验中,我学习并应用了Shell脚本语言,掌握了基本的语法和命令,并通过实验来加深对Shell编程的理解和掌握。

实验的内容包括变量的定义和使用、条件语句的实现、循环结构的应用等。

二、变量的定义和使用在Shell编程中,变量的定义和使用是非常重要的一部分。

通过实验,我学会了如何使用“=”符号来给变量赋值,并可以在后续的命令中使用这个变量。

在实践中,我发现给变量加上$符号可以获取变量的值,并且可以在字符串中插入变量。

这在编写脚本时非常有用,可以将一些可变的部分定义为变量,提高程序的可读性和可维护性。

三、条件语句的实现条件语句在Shell编程中起到了重要的作用,可以根据不同的条件执行不同的命令。

通过实验,我掌握了Shell中常用的条件判断语句,如if语句和case语句。

在编写条件语句时,我注意到要使用适当的比较运算符(如“-eq”表示等于、“-ne”表示不等于等),并在语句块的结尾加上“fi”或“esac”来结束条件语句的定义。

四、循环结构的应用在实践中,我发现循环结构是Shell编程中非常重要的一部分,可以重复执行特定的任务。

通过实验,我掌握了两种常见的循环结构:for循环和while循环。

在编写循环结构时,我注意到要使用适当的循环控制语句,如“break”可以用于跳出循环,“continue”可以用于跳过当前循环中的剩余命令,继续下一次循环。

五、实验心得通过这次实验,我深刻认识到了Shell编程在自动化任务和脚本编写方面的重要性。

Shell编程既可以简化日常工作中的重复性任务,又可以提高工作效率和减少出错的可能性。

linux实验系统实验报告

linux实验系统实验报告

linux实验系统实验报告Linux实验系统实验报告一、引言Linux实验系统是一个基于Linux操作系统的实验平台,旨在提供一个实践学习的环境,帮助学生深入了解Linux操作系统的原理和应用。

本实验报告旨在总结和分析我在使用Linux实验系统进行实验时的经验和收获。

二、实验环境1. 硬件环境:我使用的是一台配备Intel Core i5处理器和8GB内存的个人电脑。

2. 软件环境:我下载并安装了Linux实验系统的最新版本,该版本基于Ubuntu操作系统,并预装了一系列常用的开发工具和软件包。

三、实验内容1. 实验一:Linux基础命令的使用在这个实验中,我通过终端窗口使用了一些常用的Linux命令,如ls、cd、mkdir、rm等。

通过实际操作,我熟悉了Linux文件系统的结构和基本操作,掌握了如何在Linux中创建、删除和移动文件夹,以及如何查看文件和文件夹的属性。

2. 实验二:Shell脚本编程这个实验要求我们使用Shell脚本编写一个简单的程序,实现对指定文件夹中所有文件进行备份的功能。

通过这个实验,我学会了如何使用Shell编程语言,掌握了一些基本的语法和命令,比如if语句、for循环和cp命令。

我还学会了如何将Shell脚本保存为可执行文件,并在终端中运行。

3. 实验三:网络配置与管理这个实验主要涉及Linux系统的网络配置和管理。

我学会了如何配置网络接口,包括设置IP地址、子网掩码和网关。

我还学会了如何使用ping命令测试网络连接,以及如何使用ifconfig命令查看和管理网络接口的状态。

通过这个实验,我对Linux系统的网络配置有了更深入的了解。

四、实验收获通过使用Linux实验系统进行实验,我获得了以下收获:1. 对Linux操作系统有了更深入的了解:通过实际操作,我对Linux操作系统的基本原理和文件系统有了更深入的了解。

我学会了如何在Linux中进行文件和文件夹的管理,以及如何使用命令行界面进行各种操作。

linuxshell编程实验总结

Linux Shell 编程实验总结1.引言本文档总结了在学习Li nu xS he ll编程过程中的实验经验和心得体会。

通过对L in ux Sh el l编程实验的实施和总结,我们能够更好地理解S h el l脚本的运行机制,掌握Sh el l脚本的基本语法和常用命令,提高编写高效、精确的Sh e ll脚本的能力。

2.实验一:S hell 脚本基础2.1实验目的本实验旨在帮助学员熟悉Sh el l脚本的基本语法和常用命令,掌握脚本的编写与执行方法。

2.2实验内容在本实验中,我们学习了如何编写具有特定功能的Sh el l脚本,如输出H el lo Wo rl d、计算两个数之和、判断文件是否存在等。

2.3实验心得通过本实验的实施,我对Sh el l脚本的基本语法有了更深入的理解。

在编写脚本的过程中,我发现使用变量、条件判断和循环结构可以极大地提高脚本的灵活性和实用性。

同时,我也加深了对常用命令的认识和掌握,如e ch o、re ad、i f-e ls e、fo r循环等。

这些基本的知识将为后续的实验和项目实践打下坚实的基础。

3.实验二:文件和目录操作3.1实验目的本实验旨在帮助学员了解Li nu x文件系统的基本操作,掌握S he ll脚本中与文件和目录相关的命令。

3.2实验内容在本实验中,我们学习了如何创建、复制、重命名和删除文件、目录,以及如何查询文件和目录的属性信息等。

3.3实验心得通过本实验的实施,我对Li nu x文件系统有了更深入的了解。

我学会了如何使用S he ll脚本快速处理文件和目录,并且能够根据需求编写相应的脚本来操作文件。

例如,通过使用fi n d命令来查找文件,使用g r ep命令来搜索文件内容等。

这些技能在日常工作中非常有用,能够提高工作效率和准确性。

4.实验三:文本处理4.1实验目的本实验旨在帮助学员掌握Sh el l脚本中处理文本的常用命令和技巧,能够快速有效地处理常见的文本数据。

linux实验报告shell编程

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语句判断条件并执行对应的代码块。

条件可以使用比较运算符(如大于、小于、等于)和逻辑运算符(如与、或、非)进行判断。

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 ”。

实验三 Shell脚本编程实验

实验三 Shell脚本编程实验一、实验目的1.掌握Shell编程的基本方法2.了解Shell脚本的基础知识二、实验要求1.完成一个简单Shell程序的编写和执行过程;2.设计一个Shell程序,显示欢迎界面;3.使用until语句创建一个输入exit退出的Shell程序。

三、实验准备Shell是一个命令语言解释器,它拥有自己内建的Shell命令集,Shell也能被系统中其他应用程序调用。

用户在提示符下输入的命令都由Shell解释后传给Linux核心。

Shell的另一个重要特性是它自身就是一个解释型的程序设计语言。

Shell程序设计语言支持绝大多数在高级语言中能见到的程序元素,如函数、变量、数组和程序控制结构。

Shell 编程语言简单易学,任何在提示符中能键入的命令都能放到一个执行的Shell程序中。

Shell脚本的建立和执行Shell程序可以存放在文件中,这种被Shell解释执行的命令文件称为Shell脚本(Shellscript),也称做Shell文件或者Shell过程。

Shell脚本可以包含任意从键盘输入的UNIX命令。

1)·.Shell脚本的建立建立Shell脚本的方法同建立普通文本文件的方法相同,利用编辑器(如vi)进行程序录入和编辑加工。

例如,要建立一个名为ex1的Shell的脚本,可以在提示符后打入命令:$ vi ex12). 执行Shell脚本的方式执行Shell脚本的方式基本上有三种:(1)输入定向到Shell这种方式是用输入重定向方式让Shell从给定文件中读入命令行并进行相应处理。

其一般形式是:$ sh < 脚本名例如,$ sh < ex1(2)以脚本名作为Shell参数。

其一般形式是:$ sh 脚本名[参数] 例如,$ sh ex2 /usr/mengqc/usr/liuzhy(3)将Shell脚本改为有执行权限的文件,由正文编辑器(如vi)建立的Shell脚本,用户通常是不能直接执行的,需要利用命令chmod将它改为有执行权限。

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