操作系统原理实验指导书.docx
- 文档编号:7459472
- 上传时间:2023-01-24
- 格式:DOCX
- 页数:68
- 大小:551.67KB
操作系统原理实验指导书.docx
《操作系统原理实验指导书.docx》由会员分享,可在线阅读,更多相关《操作系统原理实验指导书.docx(68页珍藏版)》请在冰豆网上搜索。
操作系统原理实验指导书
操作系统原理
实验指导书
实验一Linux基本操作实验
LINUX常用命令
1.cd3
2.pwd3
3.ls3
4.passwd4
5.who4
6.cat5
7.mkdir5
8.rmdir5
9.chmod6
10.chown6
11.chgrp7
12.touch7
13.cp8
14.mv8
15.rm9
16.find9
17.grep9
18.more10
19.less10
20.head10
21.tail11
22.cut11
23.crontab11
24.sleep12
25.kill12
26.ps13
28.top14
29.man,info14
30.alias14
31.unalias14
32.clear14
1.cd
格式:
cd[dirName]
说明:
变换工作目录至dirName。
其中dirName可为绝对路径或相对路径。
若目录命令省略,则变换至使用者登录时所在的目录(homedirectory)。
另外,"~"也表示为homedirectory的意思,"."则是表示当前所在的目录,".."则表示当前目录位置的上一层目录。
范例:
1.跳到当前目录的子目录(如:
usr/bin)当中:
cd/usr/bin
2.跳到自己的homedirectory:
cd~(或cd)
3.跳到当前目录的上上两层:
cd../..
4.跳到父目录下的另外一个目录(如:
conf):
cd../conf
2.pwd
格式:
pwd
说明:
显示当前所在目录
3.ls
格式:
ls[-alrtAFR][name...]
说明:
显示指定工作目录下之内容(列出目前工作目录所含之档案及子目录)。
-a显示所有文件及目录(包括"."开头的文件)
-l除文件名外,还将文件类型、权限、拥有者、文件大小等信息详细列出
-r将文件以相反次序显示(原定依英文字母次序)
-t将文件依建立时间之先后次序列出
-A同-a,但不列出"."(当前目录)及".."(父目录)
-F在列出的文件命令后加一符号;例如可执行文件则加"*",目录则加"/"
-R若目录下有文件,则以下之档案亦皆依序列出
范例:
1.列出当前工作目录下所有命令是s开头的文件,愈新的排愈后面:
ls-ltrs*
2.将/bin目录以下所有目录及文件详细资料列出:
ls-lR/bin
3.列出当前工作目录下所有文件及目录;目录后加"/",可执行文件后加"*":
ls-AF
4.passwd
格式:
passwd[-l|-u][username]
格式:
passwd[-xmax][-nmin][-wwarn][-iinact][username]
格式:
passwd[username]
说明:
用来更改使用者的密码。
当具备root权限的使用者时,可以设置[username]的密码、更改使用者密码的有效期、锁定账户和解除锁定等。
-l:
锁定账户[username],不更改原有密码,使账户[username]不能登录
-u:
解除锁定
-x:
要求更改密码的最大天数
-n:
允许更改密码的最小天数
-w:
密码失效之前的警告天数(即提前几天警告账户密码将失效)
-i:
密码失效之后多少天,账户失效
-d关闭使用者的密码认证功能,使用者在登入时将可以不用输入密码,
-S显示指定使用者的密码认证种类,
[username]指定帐号名称.
范例:
1.锁定账户:
lijiangong,使他不能登录
passwd-llijiangong
2.解除锁定:
passwd-ulijiangong
3.设定密码有效期
passwd-x10-n3-w2-i5lijiangong
即:
3天之后才能更改密码、10天之后必须更改密码、第八天提醒修改密码、
密码失效5天之后账户失效
5.who
格式:
who-[husfV][user]
说明:
显示有哪些用户登录到系统中,显示的信息包含用户ID,使用的终
端,上线时间,呆滞时间,CPU使用量,动作等等。
参数说明:
-h:
不显示标题列
-u:
不显示用户的动作/工作
-s:
使用简短的格式来显示
-f:
不显示用户的上线位置
-V:
显示程式版本
相关命令:
whoami
说明:
显示当前用户是谁
6.cat
格式:
cat[-AbeEnstTuv][--help][--version]fileName
说明:
把文件串连接后输出到萤幕或加>fileName到另一个档案
参数:
-A等价于-vET
-n或--number由1开始对所有输出的行数编号
-b或--number-nonblank和-n相似,只不过对于空白行不编号
-e等价于–vE
-E每行末尾显示一个$符号
-s或--squeeze-blank当遇到有连续两行以上的空白行,就代换为一行的空白行
-t等价于–vT
-T显示制表符为^I
-v或--show-nonprinting,dos格式的回车换行显示为^M
范例:
1.把textfile1的文件内容加上行号后输入到textfile2文件里:
cat-ntextfile1>textfile2
2.把textfile1和textfile2的文件内容加上行号(空白行不加)之后将内容附加到textfile3:
cat-btextfile1textfile2>>textfile3
(>为重定向操作符,>>为重定向追加操作符)
7.mkdir
格式:
mkdirdirName
说明:
创建目录。
范例:
1.在当前目录下创建一子目录,名为AAA:
mkdirAAA
8.rmdir
格式:
rmdir[-p]dirName
说明:
删除空的目录。
参数:
-p是当子目录被删除后使它也成为空目录时,则顺便一并删除。
范例:
1.将当前目录下,名为AAA的子目录删除:
rmdirAAA
2.在当前目录下的BBB目录中,删除名为Test的子目录。
若Test删除后,BBB目录成为空目录,则BBB亦予删除。
rmdir-pBBB/Test
9.chmod
格式:
chmod[-cfvR][--help][--version]modefile...
说明:
Linux/Unix的文件存取权限分为三级:
文件拥有者、组、其他。
利用chmod控制文件的存取权限。
参数:
mode:
权限设定字串,格式如下:
[ugoa...][[+-=][rwx]...][,...],其中u表示该文件的拥有者,g表示与该文件的拥有者属于同一个组(group)者,o表示其他以外的人,a表示这三者皆是。
+表示增加权限、-表示取消权限、=表示唯一设定权限。
r表示可读取,w表示可写入,x表示可执行。
X表示只有当该档案是个子目录
或者该档案已经被设定过为可执行。
-c:
若该档案权限确实已经更改,才显示其更改动作
-f:
若该档案权限无法被更改也不要显示错误讯息
-v:
显示权限变更的详细资料
-R:
对目前目录下的所有档案与子目录进行相同的权限变更(即以递回的方式逐
个变更)
--help:
显示辅助说明
--version:
显示版本
范例:
1.将文件file1.txt设为所有人皆可读取:
chmodugo+rfile1.txt或chmoda+rfile1.txt
2.将文件file1.txt与file2.txt设为该文件拥有者,与其所属同一个组的人可写入,但其他以外的人则不可写入:
chmodug+w,o-wfile1.txtfile2.txt
3.将ex1.py设定为只有该文件拥有者可以执行:
chmodu+xex1.py
4.将目前目录下的所有档案与子目录皆设为任何人可读取:
chmod-Ra+r*
10.chown
格式:
chmod[-cfhvR][--help][--version]user[:
group]file...
说明:
利用chown可以将文件的拥有者加以改变。
参数:
user:
新的档案拥有者的使用者
IDgroup:
新的档案拥有者的使用者群体(group)
-c:
若该档案拥有者确实已经更改,才显示其更改动作
-f:
若该档案拥有者无法被更改也不要显示错误讯息
-h:
只对于连结(link)进行变更,而非该link真正指向的档案
-v:
显示拥有者变更的详细资料
-R:
对目前目录下的所有档案与子目录进行相同的拥有者变更(即以递回的方式逐个变更)
--help:
显示辅助说明
--version:
显示版本
范例:
1.将文件file1.txt的拥有者设为users组的使用者jessie:
chownjessie:
usersfile1.txt
2.将当前目录下的所有文件与子目录的拥有者都设为users组的使用者lamport:
chmod-Rlamport:
users*
11.chgrp
格式:
chgrp[-R]groupfile...
说明:
改变文件的所属的组。
参数:
-R:
对当前目录下的所有文件与子目录(包括子目录下的文件)进行相同的变更
范例:
1.将文件file1.txt的所属组设为users组:
chgrpusersfile1.txt
2.将当前目录下的所有文件与子目录(包括子目录下的文件)都设为bin组:
chmod-Rbin*
12.touch
格式:
touch[-acfm]
[-rreference-file][--file=reference-file]
[-tMMDDhhmm[[CC]YY][.ss]]
[-dtime][--date=time][--time={atime,access,use,mtime,modify}]
[--no-create][--help][--version]
file1[file2...]
说明:
touch指令改变文件的时间记录。
ls-l可以显示文件的时间记录。
参数:
-a改变文件的读取时间记录。
-m改变文件的修改时间记录。
-c假如目的文件不存在,不会建立新的文件。
与--no-create的效果一样。
-r使用参考文件的时间记录,与reference-file的效果一样。
-d设定时间与日期,可以使用各种不同的格式。
-f不使用,是为了与其他unix系统的相容性而保留。
-t设定档案的时间记录,格式与date指令相同。
--no-create不会建立新档案。
--help列出指令格式。
--version列出版本讯息。
范例:
1.最简单的命令格式,将文件的创建时间改为现在的时间。
若文件不存在,系统会建立一
个新的文件。
touchfile
touchfile1file2
2.将file的时间记录改变成与referencefile一样。
touch-rreferencefilefile
3.将file的时间记录改成5月6日18点3分,公元两千年。
时间可以使用am,pm或是24小时的格式,日期可以使用其他格式如6May2000。
touch-d"6:
03pm"file
touch-d"05/06/2000"file
touch-d"6:
03pm05/06/2000"file
13.cp
格式:
cp[-arf]sourcedest
cp[-arf]source...directory
说明:
将一个文件拷贝至另一文件,或将数个文件拷贝至另一目录。
参数:
-a将文件状态、权限等信息都照原状予以复制。
-r若source中含有目录名,则将目录下的文件顺序拷贝至目的地。
-f若目的地已经有相同的文件名存在,则在复制前先予以删除再行复制。
范例:
1.将文件aaa复制一份名字为bbb的文件:
cpaaabbb
2.将当前目录下的所有C程序拷贝到当前目录下的Finished子目录中:
cp*.cFinished
此外,还有一条命令是远程拷贝scp
14.mv
格式:
mv[-i]sourcedest
mv[-i]source...directory
说明:
将一个文件改名为另一文件,或将数个文件移至另一目录。
参数:
-i若目的地已有同名文件,则先询问是否覆盖旧文件。
范例:
1.将文件aaa改名为bbb:
mvaaabbb
2.将所有的C程序移至Finished子目录中:
mv-i*.cFinished
15.rm
格式:
rm[-ifr]name...
说明:
删除文件及目录。
参数:
-i删除前逐一询问确认。
-f即使原文件属性设为只读,也直接删除,无需逐一确认。
-r将目录及以下之文件逐一删除。
范例:
1.删除所有C程序文件并删除前逐一询问确认:
rm-i*.c
2.将Finished子目录及子目录中所有文件删除:
rm-rFinished
16.find
各式:
find[path...][expression]
说明:
将符合expression的文件列出来。
-aminn:
在过去n分钟内被读取过的文件
-anewerfile:
比文件file更晚被读取过的文件
-atimen:
在过去n天被读取过的文件
-cminn:
在过去n分钟内被修改过的文件
-cnewerfile:
比文件file更新的文件
-ctimen:
在过去n天过修改过的文件
-namefilename,-inamefilename:
符合filename的文件。
iname会忽略大小写
-sizen:
档案大小是n单位,b代表512位元组的区块,c表示字元数,k表示kilobytes,w是二个位元组。
-typec:
档案类型是c的档案。
范例:
1.将当前目录及其子目录下所有扩展名是c的文件列出来。
#find.-name"*.c"
2.将当前目录及其子目录下所有最近20分钟内更新过的文件列出
#find.-cmin-20
17.grep
格式:
grep[-no]patternfiles
说明:
搜索字符串命令
参数:
-n显示行号
-o只显示匹配的串
范例:
1.grepprintf*
file1.c:
printf("\nHello\n");
file2.c:
printf("\nSample\n");
grep-nprintf*
file1.c:
4printf("\nHello\n");
file2.c:
9printf("\nSample\n");
grep-oprintf*
file1.c:
printf
file2.c:
printf
2.如果搜索的串中有空格,则用引号括起来
grep"asdabc"*
18.more
格式:
more[-num][+linenum][fileNames..]
说明:
类似cat,不过是以一页一页的方式显示。
而最基本的指令就是按空白键(space)就往下一页显示,按b键就会往回(back)一页显示。
参数:
-num一次显示的行数
+linenum从第num行开始显示
fileNames欲显示内容的文件,可为多个文件
范例:
1.从第20行开始显示testfile之文件内容。
more+20testfile
19.less
格式:
less[Option]filename
说明:
less的作用与more十分相似,都可以用来浏览文本文件的内容,不同的是less允许使用者往回卷动(PageUpPageDown)以浏览已经看过的部份,同时因为less并未在一开始就读入整个文件,因此在遇上大型文件的开启时,会比一般的文本编辑器(如vi)来的快速。
20.head
格式:
head[-n|cnum]fileName
说明:
显示文件头部内容。
没有参数时,显示最前10行
参数:
-nnum显示最前num行
-cnum显示最前num字符
21.tail
格式:
tail[-n|cnum]fileName
说明:
显示文件尾部内容。
没有参数时,显示最后10行
参数:
-nnum显示最后num行
-cnum显示最后num字符
-f跟踪,随文件增长显示新的内容。
(用Ctrl+C退出)
22.cut
格式:
cut-cnum1-num2filename
说明:
显示每行从开头算起第num1到num2的字符。
范例:
1.shell>>catexample
test2
thisistest1
显示每行开头算起前6个字符
shell>>cut-c0-6example
test2
thisi
23.crontab
格式:
crontab[-uuser]filecrontab[-uuser]{-l|-r|-e}cmd
说明:
crontab是用来在固定时间或固定间隔执行程序。
-uuser设定指定user的时间表,这个前提是你必须要有其权限(比如说是root)才能够指定他人的时程表。
如果不使用-uuser,就是表示设定自己的时间表。
参数:
-e:
执行文字编辑器来设定时程表,默认的文字编辑器是VI
-r:
删除当前的时程表
-l:
列出当前的时程表
时程表的格式如下:
f1f2f3f4f5program
其中f1是表示分钟,f2表示小时,f3表示一个月份中的第几日,f4表示月份,f5表示一个星期中的第几天(0~6,0为星期天)。
cmd表示要执行的程序。
当f1为*时表示每分钟都要执行,f2为*时表示每小时都要执行,其余类推;
当f1为a-b时,表示从第a分钟到第b分钟这段时间内要执行,f2为a-b时,表示从第a到第b小时都要执行,其余类推;
当f1为*/n时,表示每n分钟个时间间隔执行一次,f2为*/n表示,每n小时个时间间隔执行一次,其余类推;
当f1为a,b,c,...时,表示第a,b,c,...分钟要执行,f2为a,b,c,...时表示,第a,b,c...个小时要执行,其余类推;
使用者也可以将所有的设定先存放在文件file中,用crontabfile的方式来设定时间表。
范例:
1.每月每天每小时的第0分钟执行一次/bin/ls:
0****/bin/ls
2.在12月内,每天的早上6点到12点中,每隔20分钟执行一次/usr/bin/backup:
0/206-12*12*/usr/bin/backup
3.周一到周五每天下午5:
00执行一次/bin/ls:
017**1-5/bin/ls
4.每月每天的午夜0点20分,2点20分,4点20分....执行echo"haha"
200-23/2***echo"haha"
24.sleep
格式:
sleep[--help][--version]number[smhd]
说明:
sleep可以用来将当前动作延迟一段时间
参数:
--help:
显示辅助讯息
--version:
显示版本编号
number:
时间长度,后面可接s、m、h或d,其中s为秒,m为分钟,h为小时,d为日数
范例:
1.显示当前时间后延迟1分钟,之后再次显示时间:
date;sleep1m;date
25.kill
格式:
kill[-ssignal]pid...
kill-l[signal]
说明:
kill送出一个特定的信号(signal)给进程号为pid的进程。
根据该信号而做特定的动作,若没有指定,默认是送出终止(TERM)信号
参数:
-s(signal):
其中常用的一个信号(9)杀死进程;详细的信号可以用kill-l
-l(signal):
列出所有可用的信号名称
范例:
1.将pid为323的进程杀死:
kill-9323
2.将pid为456的行程重跑(restart):
kill-HUP456
26.ps
格式:
ps[options][--help]
说明:
显示进程的名称、占用资源、状态
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 操作系统 原理 实验 指导书