操作系统上机实验接口.docx
- 文档编号:12226601
- 上传时间:2023-04-17
- 格式:DOCX
- 页数:21
- 大小:39.96KB
操作系统上机实验接口.docx
《操作系统上机实验接口.docx》由会员分享,可在线阅读,更多相关《操作系统上机实验接口.docx(21页珍藏版)》请在冰豆网上搜索。
操作系统上机实验接口
实验一Linux接口实验
姓名:
班级:
学号:
地点:
时间:
成绩:
一、实验内容
在Linux环境下练习部分Linuxshell命令,共15小题。
提示:
可参考课本p362.3.1节。
二、实验目的
熟悉LinuxShell基本常用命令。
三、实验环境
登陆Linux虚拟机,进入Linuxshell,提示符为$,表示普通用户提示符。
四、实验题目
1、使用pwd命令,并说明pwd功能意义。
功能:
2、使用cd~和cd..命令,查看结果,并说明cd~和cd..的功能意义。
功能意义:
3、使用ls–al命令,查看结果并解释ls–al命令的功能意义。
功能意义:
4、使用man命令查看mkdir命令的联机帮助文件,写出命令。
命令:
5、在当前目录下创建一个子目录,名为自己名字的缩写(如:
wm),
再在该子目录下创建一个目录interface。
写出相关命令。
提示使用“mkdir”命令创建子目录,用“cd”命令进入该子目录。
命令:
6、在interface目录下使用vim或vi创建一个hello.c源文件,并使用gcc编译链接,运行hello,查看结果。
(备注:
hello.c文件内容自定),写出命令。
命令:
7、在interface目录下创建子目录temp,将hello.c拷贝到temp目录下,写出命令。
命令:
8、删除temp目录下的文件hello.c,写出命令。
命令:
9、使用mv-i*.c/interface/temp命令(备注:
此命令若提示出错,请自行修改实现),并说明该命令的意义。
命令:
功能意义:
10、使用whereismv命令,并说明whereis的功能意义。
功能意义:
11、显示系统时间。
命令:
12、查看登录系统的所有用户,并使用ping命令查看某一用户是否正常。
命令:
13、实现课本p40环境变量例子
命令:
14、实现catfile1file2|wc,并对命令进行功能解释(提示:
此命令可正确运行吗?
若不行,修改使之正确运行,参见课本p42的4)),写出相应命令。
命令:
功能解释:
15、实现课本p425)、6)、7)例子,写出命令。
5)命令:
6)命令:
7)命令:
五、实验要求
要求在Linux下完成实验题目,并根据题目要求写出相关内容。
附:
一、最常用基本命令
1.man显示联机Linux手册
[格式]$man[option][chapter]title...
[描述]man命令打印你所指定的命令。
在你的LINUX系统中,也许有LINUX系统V用户手册或Linux程序员手册。
在较小的Linux系统中,也许没有man命令,因为联机手册需要相当大的磁盘空间。
[举例]你可使用命令manwho查看who命令的手册描述。
2.ls显示当前工作目录下内容
[格式]$ls[-ltr]
[描述]ls(list)命令是非常有用的命令,根据文件名按字母顺序显示当前目录中的文件和子目录列表。
配合参数的使用,能以不同的方式显示目录内容。
[选择项]ls命令有多个选择项,下面列出几个重要的选择项:
-l以长[格式]列出文件,其中包括文件中的字符个数,以及最近修改的日期和时间。
-t以最近修改的时间顺序列出文件。
-r将-t选择的列表顺序变反。
-a显示隐藏文件。
当运行ls命令时,并不会显示名称以“.”开头的文件。
因此可加上“-a”参数指定要列出这些文件。
[举例]以修改时间的顺序列文件,输入命令ls-ltr<CR>。
Linux文件的类型:
“-”为正文文件——普通文件;
“d”为目录文件;
“b”为块设备文件;
“c”为字符设备文件;
“l”为链接文件;
“p”为管道文件;
3.cd切换工作目录----在目录树中移动
[格式]$cd[路径]
[描述]cd(changedirectory)命令切换到指定的目录,并把它作为工作目录。
它有三种[格式]:
cd返回用户主目录,并把它作为工作目录。
cd目录名称改变现行目录到指定目录。
cd..返回到工作目录的父目录,并把它作为工作目录。
cd/进到根目录
4.mkdir在当前工作目录下建立子目录
[格式]$mkdir目录名称
[描述]mkdir(makedirectory)命令建立1个或多个指定目录。
5.rmdir删除当前工作目录下子目录
[格式]$rmdir目录名称...
[描述]rmdir(removedirectory)命令删除指定目录,而目录必须为空。
如果目录不为空,LINUX将显示适当的报错信息。
[注释]要删除含有文件的目录,你可使用带有危险性的rm-r命令。
6.rm删除文件
[格式]$rm文件名...
[描述]rm命令删除一个或多个指定文件。
选择项-i选择项使LINUX询问是否要删除指定文件。
如果是这样,则键入y(表示yes),否则键入n(表示no)。
选择项-f选择项使LINUX直接删除文件,不再询问。
[举例]为删除文件pterodacty,请键入命令rmpterodacty<CR>。
为用-i选择项删除文件“dinosaur”,请输入命令rm-idinosaur<CR>。
LINUX会问你“rm:
removedinosaur?
(删除dinosaur吗?
)”如果你要删除“dinosaur”,则键入y,否则,键入n。
选择项-v选择项使LINUX显示删除过程。
7.rm-r删除目录及其文件
[格式]$rm-r目录名称
[描述]rm-r(removerecursively)命令删除指定目录及其内容。
[注释]rm-r命令删除指定目录以及目录所含的所有文件和目录。
命令rm-r具有很大的危险性,因为你也许不小心删除了你不愿删除的文件。
8.cp复制文件
[格式]$cp文件名1文件名2
[描述]cp命令进行文件“文件名1”的复制拷贝,拷贝件称为“文件名2”
[注释]如果你将一文件拷贝到已存在的文件中,那么现存文件的内容会被改写。
一般状态下不会显示复制过程,若要显示复制过程,则加入-v参数可显示命令执行过程。
加入“-R”参数可同时复制目录下的所有文件及子目录。
[举例]为将文件从“this”拷贝到“that”中,请输入命令cpthisthat<CR>
9.mv移动或重新命名文件和目录
[格式]$mv文件名1文件名2
$mv文件名...directory
$mvdirectorydirectory
[描述]mv命令的
第1种[格式]重新命名指定的普通文件;
第2种[格式]将指定的普通文件移到指定目录;
第3种[格式]重新命名带指定名的指定目录,或如果第2个目录名是1个现存目录,那么就把第1个指定目录移到它里面。
[举例]下面的命令将普通文件“文件名1”和“文件名2”移到目录“directory.1”中:
mv文件名1文件名2directory.1
下面这条命令将工作目录中其名以“文件名”开头的所有文件移到目录“directory.1”中:
mvfile*directory.1
下面这条命令不仅重新命名目录“index”,而且把它从你的工作目录移到目录“/usr/ishmael/book”中。
然而,如果“/usr/ishmael/book/index”是1个现存目录,那么该命令将把“directory.1”移到其中,而不变更名字。
mvdirectory.1/usr/ishmael/book/I
10.重导与管道
重导(redirect)可将某命令的结果输出到文件中,它有两种命令:
“>”和“>>”。
“>”可将结果输出到文件中,该文件原有的内容会被删除:
“>>”则将结果附加到文件中,原文件内容不会被清除。
范例如下:
[tony@freetony]$ls–a>dir.txt←将ls–a命令执行结果输出到dir.txt文件。
[tony@freetony]$catdata1.txt>>data2.txt←将data1.txt内容附加到data2.txt文件之后。
通道(pipe)命令的符号是“|”,可将某命令的结果输出给另一命令,以下范例将ls命令的输出结果传给grep命令过滤:
[tony@freeetc]$ls|grepconf←搜索并显示ls命令运行结果中包含有“conf”字符串。
11.cat直接显示文件内容
[格式]$cat文件名...
[描述]cat命令将文件名作为其自变量显示文件的内容(经常和more命令搭配使用),或是将数个文件合并成一个文件。
[注释]cat命令通常用文件名作为自变量,如果在你按RETURN键之前忘记键入文件名,那么请按DELETE键。
之后,会出现shell提示符.“cat”表示concatenate;cat命令还可用来合并文件。
如果文件显示太快,你可按control-s(∧S)终止cat的输出;同时,你可按control-q(∧Q)恢复输出。
[举例]
显示两个文件“bird”和“dog”,输入命令catbirddog<CR>。
一旦cat显示完“bird”,它便显示“dog”。
将preface.txt附加到outline.txt文件之后:
[tony@freetony]$catpreface.txt>>outline.txt
将new.txt和info.txt合并成readme.txt文件:
[tony@freetony]$catnew.txtinfo.txt>readme.txt
12.more分屏显示文件内容
[格式]$more文件名...
[描述]为了避免画面显示瞬间就闪过去,用户可以使用more命令显示文件,一次显示一屏。
对每一屏,more都打印一个百分数,指出已显示了文件的多少内容。
为显示另一屏幕,应按SPACEBAR(空格键)。
如果你仅想显示下一行,则可按RETURN键,按Q键停止显示。
当more显示整个文件后,就返回shell提示符。
要在完成文件显示之前退出more,请按DELETE键。
[选择项]more有一些选择项,在你成为有经验的用户后,这些选择项对你会有用。
你的用户手册会[描述]这些选择项。
[注释]more命令不是所有LINUX系统中都有。
如果你的系统有more命令,你可使用more命令而不使用cat命令,因为more命令允许你控制显示多少文件内容。
当使用ls命令查看文件列表时,若文件太多则可以配合more命令使用。
[举例]
[tony@freebin]$ls–al more
13.less上下浏览文件内容
[格式]$less文件名
[描述]less命令显示文件,且可以回顾前面的内容。
当使用less文件名查看一个文件内容时,屏幕上先显示出第一页的内容,看完后按空格键跳到下一页,按Enter键向下移一行。
另外,按PageUp及PageDown键可以看上一页及下一页的内容。
结束时要按Q键跳回shell。
14.pwd列出当前目录的完整路径名
[格式]$pwd
[描述]pwd(printworkingdirectory)命令显示用户当前所在的目录。
15.su从普通用户注册到root帐户
[描述]su命令可以从普通用户注册到root帐户,而不用退出用户帐户重新登录。
在shell提示符$下键入su,回车,输入root口令
16.tar打包、压缩与解压缩
[格式]tar参数文件名
[描述]tar命令位于/bin目录中,它能将用户所指定的文件或目录打包成一个文件,不过它并不做压缩。
一般常用的压缩方式是先用tar命令将许多文件打包成一个文件,再以gzip等压缩命令压缩文件。
tar命令参数繁多,以下举例常用参数作说明:
-c:
创建一个新的tar文件;
-v:
显示运作过程信息;
-f:
在:
指定文件名称;
-z:
调用gzip压缩命令执行压缩;
-j:
调用bzip2压缩命令执行压缩;
-t:
参看压缩文件内容;
-x:
解开tar文件。
常用范例:
[tony@freedata]#tarcvfdata.tar*←将目录下所有文件打包成data.tar
[tony@freedata]#tarcvfdata.tar.gz*←将目录所有文件打包成data.tar再用gzip命令压缩
[tony@freedata]#tartvfdata.tar*←查看data.tar文件中包括了哪些文件
[tony@freedata]#tarxvfdata.tar*←将data.tar解开
[注释]tar命令本身没有压缩能力,但是可以在产生的tar文件后,立即使用其他压缩命令来压缩,省去需要输入两次命令的麻烦。
使用-z参数来解开最常见的.tar.gz文件;使用-j参数解开tar.bz2压缩文件;使用-Z参数指定以compress命令压缩。
[tony@freedata]#tar–cZvfpicture.tar.Z*.tif将该目录下所有.tif打包并命令压缩成.tar.Z文件
17.passwd修改密码
[格式]passwd
[描述]passwd(password)命令可让用户变更密码。
[举例]
[tony@freetony]$passwd
Changingpasswordforusertony
Changingpasswordfortony
(current)UNIXpassword:
←输入原密码
Newpassword:
←输入新密码
Retypenewpassword←在此输入新密码
passwd:
allauthenticationtokensupdatedsuccessfully←密码修改成功
18.gcc编译链接程序
[格式]gcc[-option…]源文件目标文件-o可执行文件[-llibrary…]
[描述]gcc是用来编译程序的命令。
option为编译选项,gcc总共提供的编译选项超过100个,但只有少数几个会被频繁使用,在此仅对几个常用选项进行介绍。
-c选项告诉GCC仅把源代码编译为目标代码而跳过汇编和连接的步骤。
-o为将要产生的可执行文件指定一个文件名。
-E选项指示编译器仅对输入文件进行预处理。
当这个选项被使用时,预处理器的输出被送到标准输出(默认为屏幕)而不是储存在文件里。
-O选项告诉GCC对源代码进行基本优化从而使得程序执行地更快;而-O2选项告诉GCC产生尽可能小和尽可能快的代码。
使用-O2选项编译的速度比使用-O时慢,但产生的代码执行速度会更快。
-g选项告诉GCC产生能被GNU调试器使用的调试信息以便调试你的程序,可喜的是,在GCC里,我们能联用-g和-O(产生优化代码)。
[举例]
$gccf1.cf2.c(针对C语言源程序)
执行完成后,生成默认的可执行文件a.out。
$gcc–ohelloworldhelloworld.c
执行完成后,将生成名为指定文件名helloworld的可执行文件,要执行该文件用以下命令:
./helloworld
二、其他常用命令
1.locate搜索文件
[格式]$locate字符串
[描述]locate命令按给定字符串搜索文件,它可将所有文件名称中及路径中包含该字符串的文件,都会连同路径一起显示,甚至只知道文件的部分名称就可以使用本命令。
[举例]
[tony@freetony]$locatezh_CN列出所有包含“zh_CN”字符串的文件和目录。
[注释]由于locate命令是从系统中保存文件及目录名称的数据库中搜索文件,虽然系统会定时更新数据库,但对于刚新增或删除的文件、目录,仍然可能会因为数据库尚未更新而无法查得,此时可用root身份运行updatedb命令更新,使数据库的内容正确。
2.find搜寻文件与目录
[格式]$find目录名选项
常用选项有:
-namefilename按名字查找
-typex查找类型为x的文件(x包括:
b,c,d,f,l等)
userusername查找属主为username的文件
-atimen查找n天以前被访问过的文件
-mtimen查找n天以前被修改过的文件
-cminn查找n分钟以前被修改过的文件
-execcmd{}对查找出来的文件执行cmd命令,{}表示找到的文件,命令要以“\\;”结束。
[举例]
$find/home/lin-namehash在/home/lin目录下找寻名为hash的文件
$find/-namefs*-print从/根目录开始搜寻所有以fs开头的文件,然后用参数–print打印出符合条件的文件路径。
$find.-name*.c-execrm-f{}\\;表示在用户当前的目录,搜寻所有以.c为结尾的文件名*.c,然后用参数-exec执行rm-f{}\\;删除全部以.c结尾的文件(注意大括号里面没有空格)。
3.grep搜索包含特定字符串的文件
[格式]grep“字符串”[要搜索的文本文件]
[描述]grep命令可以搜索特定字符串来并显示出来,一般用来过滤先前得结果,避免显示太多不必要得信息。
[举例]
[tony@freeetc]$greptext*.conf←搜索当前目录中扩展名为.conf且包含“text”字符串得文件。
若您是使用一般权限的用户运行,上例的输出结果会包含很多如“拒绝不符权限的操作之类的错误信息,可使用-s参数消除。
[tony@freeetc]$grep–stext*.conf
另外,grep命令还可以用于查找用正则表达式所定义的目标。
正则表达式包括字母和数字,以及那些对grep有特殊含义的字符。
比如,
^指示一行的开头
$指示一行的结束
.代表任意单一字符
*表示匹配零个或多个*之前的字符
范例如下:
$grep′^b′file1查找文件file1中所有以b开头的行。
$grep′b$′file1查找文件file1中所有以b结尾的行。
$grep′an.′file2查找文件file2中所有以an为头两个字符的3个字符,包括any,and等。
4.阅读news消息
[格式]$news
[描述]在某些系统上,当你注册时,也许出现信息“youhavenews(有你的新闻消息)”。
它告诉你有系统新闻消息。
输入命令news,可读取新闻消息。
5.mail发送或接收用户中的邮件
Linux本身带有邮件系统,当用户使用Linux时,可以使用mail命令电子邮件发送和接收信息.
[格式]$mailusername...
mail[-r][-ffile]
[描述]mail用1个或多个用户名的列表将电子邮件发送给指定用户。
如果邮件命令中使用了1个无效用户名,那么信息在文件“dead.letter”中处理。
如果没有自变量,mail程序将先显示最新的邮件信息。
当你查看你的邮件时,mail显示1个问号(?
)邮件提示符,要你处理每条信息。
[选择项]-r按反序显示邮件,先显示最旧的信息。
-ffile处理来自命名文件(如“mbox”)中的信息。
邮件命令
*(或?
)打印邮件命令一览表。
在系统V,“帮助”命令是“*”号。
在其他Linux系统中,“帮助”命令是“?
”号。
<CR>显示下一个信息。
d删除信息。
s[file]若无自变量,将信息保存在“mbox”中;如果“mbox”不存在,Linux会建立该文件。
若有自变量,则将信息保存在一命令文件中。
如果文件已存在,Linux就将信息添加到文件后面。
q退出mail程序。
除你用d命令删除的信息或用s命令保存的信息外,将信息保留在你的邮件文件中。
x退出,但不修改你的邮件文件。
!
command执行单个shell命令。
[举例]你可以输入命令:
mailusernameusernameusername<CR>。
将同一信息发送给多个用户(其中包括你自己)。
你可使用命令mailusername
6.who列出当前联机用户
[格式]$who[amI]
[描述]who命令显示注册名.端口或终端(tty)号,以及用户注册的注册时间。
如果我们使用whoamI命令,那么LINUX仅在终端上显示帐号的信息。
如果你在多个终端上注册,并想知道你目前正使用哪一个,那么命令whoamI是很有用的。
[举例]为查看目前谁已注册,请输入命令who。
7.cmp比较文件
[格式]$cmp文件名1文件名2
[描述]cmp命令对任意两个文件进行比较(包括二进制文件).
8.diff两个文本文件比较
[格式]$diff文件名1文件名2
[描述]本命令仅用于文本文件,产生两个文本文件间全部差异的索引.
9.echo复制命令行中的参数
[格式]$echo<参数1><参数2>……<参数n>
[描述]在屏幕显示命令行中的参数
[举例]$echo“Helloworld”
该命令将在屏幕上显示字符串“Helloworld”。
10.wc对文件中的字、行、字符进行计数
[格式]wc[选项]<文件1><文件2>……<文件n>
[描述]该命令用于正文文件中统计正文的单元。
如果命令行中没有指定文件,则指对标准输入进行统计。
[选择项]
-w对字数进行统计
-l对行数进行统计
-c对字符数进行统计
11.help提供帮助
[格式]$helparguments
[描述]help解释诊断信息的含义是什么,或讲解命令如何使用。
自变量可是命令名,也可是信息。
如果你用stuck做为自变量,那么LINUX将讲解如何使用help。
[举例]如果你输入命令helpman<CR>,LINUX将讲解如何使用man命令。
如果你输入命令helpstuck<CR>,LINUX将给出有关如何使用help命令的信息。
12.&在后台运行一个进程
[描述]LINUX系统不但允许不同用户同时执行命令,而且也允许一个单用户一次完成两个以上的任务.用户可以在后台运行一个长任务,只要在你要在后台
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 操作系统 上机 实验 接口
![提示](https://static.bdocx.com/images/bang_tan.gif)