linux实验教学文案.docx
- 文档编号:25298593
- 上传时间:2023-06-07
- 格式:DOCX
- 页数:44
- 大小:42.42KB
linux实验教学文案.docx
《linux实验教学文案.docx》由会员分享,可在线阅读,更多相关《linux实验教学文案.docx(44页珍藏版)》请在冰豆网上搜索。
linux实验教学文案
linux实验
嵌入式操作系统
实
验
指
导
书
苗暹黄连丽
实验一Linux命令使用
实验二vi编辑器的使用
实验三shell编程实验
(一)
实验四shell编程实验
(二)
实验五Linux开发工具的使用
实验六Linux编程实验
(一)
实验七Linux编程实验
(二)
实验八Linux的系统及网络管理实验
实验一Linux命令使用
班级:
姓名:
学号:
上机时间:
任课教师:
实验教师:
实验成绩:
一、实验目的
1.掌握Linux的一般命令格式。
2.掌握有关文件和目录操作的常用命令。
3.掌握有关进程操作的常用命令。
4.熟练使用man命令。
二、实验注意事项
实验环境与系统是共用设施,请不要在系统内做对系统或对其他用户不安全的事情。
要求每个同学登录后系统后,要在主目录(/home/student)下创建一个属于自己的子目录(以自己(拼音)名字或学号)。
以后所有工作都要在自己的目录内进行。
建议以后的实验都在同台计算机上做,这样可以保持连续性。
三、实验内容及步骤:
1.登录进入系统。
开机,选择进入,再选择登陆窗口,输入用户名:
,
输入密码:
,进入Ubuntu图形桌面环境。
2.使用简单命令:
date,cal,who,echo,clear等,了解Linux命令格式。
要启动一个终端,可以选择
在终端提示符下输入:
date↲显示:
。
在终端提示符下输入:
who↲显示:
。
在终端提示符下输入:
whoamI↲显示:
。
在终端下显示Hello!
命令:
。
在终端提示符下输入:
clear↲显示:
。
在终端提示符下输入:
cal↲显示:
。
3.浏览文件系统:
(1)运行pwd命令,确定当前工作目录,记录之:
。
(2)运行ls命令,查看当前目录下有哪些文件和子目录,简略记录。
(3)运行ls-l命令,理解文件各字段的含义,找一个文件标注。
(4)运行ls-ai命令,理解各字段的含义。
(5)使用cd/命令,将当前目录改变为根目录(/)。
运行ls-l命令,结合书中给出的Linux树状目录结构,了解各目录的作用。
命令:
cd/↲回到:
命令:
pwd↲显示:
命令:
ls-l↲显示:
(简略记之)
(6)直接使用cd,回到了那里?
用pwd验证之。
命令:
↲回到:
命令:
↲显示:
(7)用mkdir建立一个子目录subdir。
命令:
↲
(8)将当前目录改到subdir。
命令:
↲
4.文件操作:
(1)验证当前目录在subdir。
命令:
↲显示:
(2)运行date>file1,然后运行catfile1,看到什么信息?
命令:
↲,命令:
↲
显示:
“>”是什么符号?
解释“date>file1”的含义:
(3)运行catsubdir,会有什么结果?
为什么?
结果:
为什么?
。
(4)分别用cat和more查看文件内容(提示:
/etc/manpath.config)。
比较cat和more这两个命令的异同。
。
(5)利用man命令显示date命令的使用说明。
命令:
↲
显示:
(简略记之)
。
如何从man命令状态退回到终端窗口?
。
(6)运行mandate>>file1,再运行catfile1,看到什么?
命令:
命令:
显示:
。
mandate>>file1含义:
。
(7)利用ls-lfile1,了解链接计数是多少?
运行lnfile1../fa,再运行ls-lfile1,看链接计数有无变化?
用cat命令显示fa文件内容。
(注意:
做完后要删除所做硬链接,恢复原样以便后面同学再做此实验)
命令:
ls-lfile1↲显示的链接计数:
命令:
lnfile1../fa↲
命令:
ls-lfile1↲显示的链接计数:
有无变化?
。
命令:
catfa↲显示:
。
(8)使用head和tail命令分别显示file1文件的前十行和后十行的内容。
命令:
↲
命令:
↲
(9)运行cpfile1file2,然后ls-l,看到什么?
命令:
cpfile1file2↲
ls-l↲
解释显示结果:
运行mvfile2file3,然后ls-l,看到什么?
命令:
mvfile2file3↲
ls–l↲
解释显示结果:
运行catf*,结果怎样?
命令:
catf*↲
解释显示结果:
(10)运行rmfile3,然后ls-l,看到什么?
命令:
rmfile3↲
命令:
ls-l↲
解释显示结果:
(11)在/etc/passwd文件中查找适合你的注册名的行。
命令:
(12)运行ls-l理解各文件的权限是什么?
(选择两个不同文件标注)
(13)用两种方式改变file1的权限(实例)。
①以符号模式改变权限:
②以绝对方式改变权限:
(14)统计file1文件的行数、字数、字节数。
命令:
↲
显示:
解释各参数的含义:
(15)运行命令manls|more
“manls|more”的含义:
运行catfile1|head-20|teefile5,结果如何?
显示结果:
“catfile1|head-20|teefile5”的含义:
运行catfile5|wc,结果如何?
显示结果:
“catfile5|wc”的含义:
(16)运行cd,回到主目录,运行mkdirmydir,建立mydir子目录,运行ls-l查看目录,再运行rmdirmydir,看到什么结果?
如果要删除mydir目录,该如何操作?
运行命令:
cd<回车键>回到:
运行命令:
mkdirmydir建立:
运行命令:
查看所建目录内容
运行命令:
cp/etc/profile/home/student/mydir
解释该命令:
查看mydir内容命令:
运行命令:
rmdirmydir↲
看到什么结果:
如何处理?
注意:
在这个实验中没有特别的难点,但是要注意的是,rm命令删除文件的时候,不给任何提示,因此一定要谨慎,不然很容易删除不应该删除的文件。
四、实验报告要求
1.按实验步骤写出实验命令及运行结果,回答所提问题。
2.总结上机过程中所遇到的问题和解决方法及感想。
实验二vi编辑器的使用
班级:
k1273-4姓名:
方康学号:
20129730415上机时间:
任课教师:
实验教师:
实验成绩:
一、实验目的
学习使用vi编辑器建立、编辑、显示以及加工处理文本文件。
二、实验注意事项
实验室内的实验环境与系统是共用设施,请不要在系统内做对系统或对其他用户不安全的事情。
要求每个同学登录后系统后,要在自己的家目录下创建一个属于自己的子目录(以自己(拼音)名字或学号)。
以后所有工作都要在自己的目录内进行。
建议以后的实验都在同台计算机上做,这样可以保持连续性。
三、实验内容及步骤
1.进入和退出vi
(1)进入vi,创建一个file.c文件。
命令:
。
(2)进入插入方式,输入如下C程序,将该文件存盘,回到shell状态下。
#include
intmain()
{
floata,b,x;
printf("Pleaseinputa,b:
");
scanf("%5.2f,%5.2f",a,b);
x=a%b;
printf("x=%5.2f\n",x);
return0;
}
进入插入方式命令:
,文件存盘回到shell状态命令:
。
(3)运行gccfile.c-omyfile,编译该文件,会发现错误提示,理解其含义。
编译命令:
gccfile.c-omyfile<回车>
警告:
。
警告:
。
错误:
。
(4)重新进入vi,对该文件进行修改,然后存盘,退出vi。
重新编译该文件,如果编译通过,运行该程序。
运行程序命令:
./myfile
注意:
在错误程序行旁边注释正确程序。
(5)运行mandate>file10,然后用vi打开file10文件,使用x,dd命令删除某些文本行,使用u命令复原此前的情况,使用c,r,s等命令修改文本内容,使用检索命令进行给定模式的检索。
删除光标所在的字符命令:
。
删除光标前面那个字符命令:
。
从光标位置删至到行尾命令:
。
从光标位置删至到行首命令:
。
复原命令:
。
修改命令举例:
c:
r:
s:
搜索命令:
向前字符串检索举例:
解释:
向后字符串检索举例:
解释:
查找字符命令举例:
解释:
解释:
全局替换命令举例:
解释:
解释:
解释:
2.新建文件
(1)请在主目录(/home/student)下建立一个名为vitest的目录;
命令:
(2)进入vitest这个目录当中;
命令:
(3)将/etc/manpath.config拷贝到本目录下;
命令:
(4)使用vi开启本目录下的manpath.config这个文件;
命令:
(5)在vi中设定一下行号;
设置行号命令:
。
(取消行号命令:
:
setnonu。
)
(6)移动到第67行,向右移动26个字符,请问您看到的是什么目录?
移动到第67行的命令:
向右移动26个字符的命令:
看到:
(7)再向左移动16个字符的命令:
看到:
(8)回到当前行第一个字符处命令:
移动到当前行的行尾命令:
(9)移动到第5行(包含当前行)词尾命令:
。
再回到当前行的第一个字符处。
(10)光标向前移至下一个词的开头命令:
。
(11)光标后退到前一个词的开头命令:
。
(12)移动到第一行,并且向下搜寻一下『modify』这个字符串,请问他在第几行?
移动到第一行:
,向下搜寻一下“modify”它在行。
(13)接着下来,我要将50到70行之间的man改为MAN,并且一个一个挑选是否需要修改,如何下达指令?
命令:
(14)修改完之后,突然反悔了,要全部复原,有哪些方法?
(15)我要复制51到60行这十行的内容,并且贴到最后一行之后;
(16)删除11到30行之间的20行;
(17)将这个文件另存成一个man.test.config文件;
(18)到第29行,并且删除15个字符;
(19)请问目前的文件有多少行与多少字符?
用什么命令统计?
命令:
(20)储存后离开吧。
四、实验报告要求
1.按实验步骤写出实验命令及运行结果,回答所提问题。
2.总结上机过程中所遇到的问题和解决方法及感想。
实验三shell编程实验
(一)
班级:
k1273-4姓名:
方康学号:
20129730415上机时间:
任课教师:
实验教师:
实验成绩:
一、实验目的
1.了解shell的作用和主要分类。
2.掌握bash的建立和执行方式。
3.掌握bash的基本语法。
4.综合Linux常用命令和vi编辑器的使用,熟练掌握shell脚本编程。
二、实验注意事项
实验室内的实验环境与系统是共用设施,请不要在系统内做对系统或对其他用户不安全的事情。
要求每个同学登录后系统后,要在自己的家目录下创建一个属于自己的子目录(以自己(拼音)名字或学号)。
以后所有工作都要在自己的目录内进行。
建议以后的实验都在同台计算机上做,这样可以保持连续性。
三、实验内容
1.利用vi建立一个脚本文件,该文件在用户输入年、月之后,自动打印数出该年该月的日历。
然后以3种不同方式执行该脚本,如有不能执行情况,请说明原因。
echo"pleaseinputyear"
readyear
echo"pleaseinputmonth"
readmonth
cal"$month""$year"
2.编程提示用户输入两个单词,并将其读入,然后比较这两个单词,如果两个单词相同则显示“Match”,并显示“Endofprogram”,如果不同则显示“Endofprogram”。
echo"pleaseinputword1"
readword1
echo"pleaseinputword2"
readword2
iftest"$word1"="$word2"
thenecho"match"
fi
echo"notanprogram"
3.修改上述程序,编程提示用户输入两个单词,并将其读入,然后比较这两个单词,如果两个单词相同显示“Match”,不同则显示“Notmatch”,最后显示“Endofprogram”。
<编程提示>请使用 if…then…else 控制结构。
echo"pleaseinputword1"
readword1
echo"pleaseinputword2"
readword2
iftest"$word1"="$word2"
thenecho"match"
elseecho"notmatch"
fi
echo"notanprogram"
4.编程使用case结构创建一个简单的菜单,屏幕显示菜单:
a.Currentdateandtime
b.Usercurrentlyloggedin
c.Nameoftheworkingdirectory
d.Contentsoftheworkingdirectory
Entera,b,cord:
根据用户输入选项做相应操作。
echo"pleasechoseeithera,b,c,d"
echo"a.Currentdateandtime"
echo"b.Usercurrentlyloggedin"
echo"c.Nameoftheworkingdirectory"
echo"d.Contentsoftheworkingdirectory"
readresponse
case$responsein
a)date;;
b)who;;
c)pwd;;
d)ls;;
esac
5.修改上题,使用户可以连续选择直到想退出时才退出。
echo"a.Currentdateandtime"
echo"b.Usercurrentlyloggedin"
echo"c.Nameoftheworkingdirectory"
echo"d.Contentsoftheworkingdirectory"
echo"e.return"
echo"pleasechoseeithera,b,c,d,e"
whiletrue
do
readresponse
case$responsein
a)date;;
b)who;;
c)pwd;;
d)ls;;
e)exit;;
esac
done
6.设计一个程序,从命令行接收数值参数,并计算这些参数的和。
x=10
foryin$*
do
x=`expr$x+$y`
done
echo"TheSumis:
$x"
四、实验报告要求
1.列出调试通过程序的清单,并加注释。
2.写出程序运行步骤及结果。
3.总结上机调试过程中所遇到的问题和解决方法及感想。
通过这次实验,我基本上掌握了shell的编程,了解和熟悉创建并使用脚本的步骤;
熟悉bash的控制结构;学会简单的shell编程;能够通过编程实现一些功能,学会了Shell的一些控制语句,测试,Shell变量,Shell的特殊字符等。
当然了,在实验的过程中肯定会遇到很多的困难,但是根据老师的给出的指导,根据老师的说明一步一步的做,问题不大,遇到了实在解决不了的问题,我会去请教老师和同学,把问题解决掉。
初步学会了Linux下Shell的编程,为以后更加系统的学习Linux打下了坚实的基础!
实验四shell编程实验
(二)
班级:
姓名:
学号:
上机时间:
任课教师:
实验教师:
实验成绩:
一、实验目的
综合Linux常用命令和vi编辑器的使用,熟练掌握shell脚本编程。
二、实验注意事项
实验室内的实验环境与系统是共用设施,请不要在系统内做对系统或对其他用户不安全的事情。
要求每个同学登录后系统后,要在自己的家目录下创建一个属于自己的子目录(以自己(拼音)名字或学号)。
以后所有工作都要在自己的目录内进行。
建议以后的实验都在同台计算机上做,这样可以保持连续性。
三、实验内容
1.变写一个脚本,求斐波那契数列的前10项及总和。
num1=1
num2=1
echo-n"$num1+$num2"
sum=2
for((i=1;i<=8;i++))
do
tmp=`expr$num1+$num2`
echo-n"+$tmp"
((num1=num2))
((num2=tmp))
sum=$(expr$sum+$tmp)
done
echo"=$sum"
fk@ubuntu:
~$cat>fks1
fk@ubuntu:
~$bashfks1
1+1+2+3+5+8+13+21+34+55=143
2.编写一个脚本,求一个数的逆序。
readmatch
leti=match
while[$i-gt0]
do
leta=i%10
echo-n"$a"
leti=i/10
done
echo"
fk@ubuntu:
~$bashfk4
1234
4321
3.设计一个Shell程序,在用户主目录下建立一个userdata目录,在此目录下再建立5个目录,即user1~user5,并设置每个目录的权限,其中其他用户的权限为:
读;文件所有者的权限为:
读、写、执行;文件所有者所在组的权限为:
读、执行。
(注意:
最后删除自己所建立的目录,恢复原样,以便后面同学做此实验)
4.用Shell编程,判断一文件是不是普通文件,如果是将其拷贝到/home/student/test目录下,用命令查看test目录内容,最后再删除test目录。
5.编写脚本,统计指定目录下普通文件及目录文件的数目,要求不能使用wc统计命令。
6.编程实现简单计算器。
要求用户输入一个表达式并输入结果,程序会判断用户输入的结果是否正确,并给出提示。
直到用户输入‘q’时,才退出执行。
参考程序:
#!
/bin/bash
#fileName:
first
#note:
Thisisthefirsttitle
#function:
inputanexpretionandtheanswer,Iwilltellyourightorwrong
#Youcantryitasmanytimesasyoulike.
echoHello!
@_@
echoWelcomtothecalculatetesting!
echoYoucaninputanexpretionsuchas2*2or3+1,andinputtheanswer
echoIwilltellyouwhetheryouarerightorwrong.
echoYoucaninput'q'toexit.
echo"Nowlet'sbegin!
"
number1=0;
while["$number1"!
="q"]
do
echoInputthefirstnumber:
readnumber1
echoInputtheoperatortype:
readtype
echoInputthesecondnumber:
readnumber2
echoInputtheanswer:
readyourAnswer
case$typein
+)myAnswer=`expr$number1+$number2`;;
-)myAnswer=`expr$number1-$number2`;;
\*)myAnswer=`expr$number1\*$number2`;;
/)
if[$number2-eq0]
then
echo"Sorry!
:
-("
echo"0cannotbethedivisor"
continue
else
myAnswer=`expr$number1/$number2`
fi
;;
*)echoError!
;;
esac
if[$myAnswer-eq$yourAnswer]
then
echo":
-)"Congratulations!
echoYourareright!
echoInput'q'toexitortryagain!
else
echo":
-("Sorry!
echoYouarewrong!
echo"Therightansweris:
"
echo"$number1$type$number2=$myAnswer"
echoInput'q'toexitortryagain!
fi
#echoInputthefirstnumber:
#readnumber1
done
要求:
请同学仔细分析该程序,理解其中的语句及用法,写出程序分析及总结。
四、实验报告要求
1.列出调试通过程序的清单,并加注释。
2.写出程序运行步骤及结果。
3.总结上机调试过程中所遇到的问题和解决方法及感想。
实验五Linux开发工具的使
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- linux 实验教学 文案