Linux 实验合集

更新时间:2023-11-15 03:05:01 阅读量: 教育文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

一.

1)启动Linux操作系统,并启动KDE图形桌面。熟悉各屏幕元素。通过KDE编辑器编辑两个文本文件file1、file2。

新建一个文本文件 vi New Filename 编辑一个已有的文件 vi Filename

2)在主目录下创建文件夹exercise,将文件file1、file2移到新建的目录下。然后分别采用回收站和删除方式删除文件fiel1、file2。注意比较它们的区别。 移动 mv file1 file2 /home/exercise 删除 rm file1

3)定制KDE桌面,将虚拟桌面的个数改为5个,并为它们设置不同的背景。 4)在Linux图形用户界面下,创建一个新用户(普通用户) 。 adduser username

5)在Linux图形用户界面下,按下组合键(或)切换到虚拟控制台1,以root超级用户身份登录。

6)按下组合键 (或)切换到虚拟控制台2,以在第(1)步中所创建的普通用户身份登录。

二.

2.使用简单命令:date,cal,who,echo,clear等,了解Linux命令格式。 date:显示日期/ cal:显示日历/ who:列出所有正在使用系统的用户、终端名、注册时间/echo:标准输出/clear:清屏 3.浏览文件系统:

1)运行pwd命令,确定当前工作目录。 pwd:显示当前工作目录的绝对路径 2)运行ls -l命令,理解各字段含义。 -l: 以长格式显示文件的详细信息

如:-rw-r--r-- 1 peter peter 19 2012-05-11 19:19 Test03

文件类型权限、连接数、文件主、文件组、文件大小、建立或最近修改的时间、文件名 3)运行ls –ai ,理解各字段含义。 -a: 显示指定目录下所有子目录和文件 -i: 在输出的第一列显示文件的I节点号 4)使用cd命令,将工作目录改到根(/)上。 运行ls –l命令。

5)直接使用cd,回到哪里了?用pwd验证。 cd: 将当前目录改到用户的主目录(非根目录) 6)用mkdir建立一个子目录subdir。 mkdir subdir

7)将工作目录改到subdir。 cd dir

4.文件操作

1)验证当前工作目录在subdir。 运用pwd命令验证

2)运行date〉file1,然后运行cat file1 ,看到什么信息? 显示日期内容

3)运行cat subdir,会有什么结果?为什么? 出错。subdir是一个目录而非文件

4)利用man命令显示date命令的使用说明。 man date

man:查看所有命令的完整说明 5)运行man date〉〉file1,看到什么? 运行cat file1 ,看到什么? 显示man date的内容 (一个>是覆盖,两个>是补充)

6)利用ls –l file1 ,了解链接计数是多少? 运行 ln file1 ../fa,再运行ls –l file1 ,看链接计数有无变化?用cat命令显示fa文件内容。 链接记数从1变为2 ln: 为某一个文件在另外一个位置建立一个同不的链接

7)显示file1的前10行,后10行。 显示前10行 head file1 显示后10行 tail file1

8)运行cp file1 file2 ,然后ls –l,看到什么? cp:复制

运行mv file2 file3 ,然后ls –l,看到什么?

mv:移动

运行cat f*,结果怎样? 显示所有以f开头的文件内容

9)运行rm file3,然后ls –l ,结果怎样? rm:移除

10)在/etc/passwd文件中查找适合你的注册名的行。

用户名:口令:用户标识号:组标识号:注释性描述:主目录:登录Shell 11)运行ls –l,理解各文件的权限是什么? r:读 (4)w:写(2) x:执行(1)

12)统计file1文件的行数、字数。 wc file1

- c 统计字节数。 - l 统计行数。

- w 统计字数。

13)运行man ls|more,显示结果是什么?

运行cat file1|head -20|tee file5,结果如何? tee:读取标准输入的数据,并将其内容输出成文件。 运行cat file5|wc,结果如何? 输出字节数、行数、字数…

三.

1. 请给出下列命令执行的结果:

①cd 主目录 ②cd .. 上一级目录 ③ cd –上次记录

④cd ~主目录⑤cd ../.. 向上移动两级目录 ⑥ cd /根目录

2.目录ABC下有两个子目录a1、b2以及5个普通文件。如果想删除ABC,可使用什么命令? rm(不是rmdir) –rf ABC

3. 某用户需要以长格式使用三种排序方式显示目录/bin的内容:

(1)以文件大小由大到小的次序排序; ls -S

(2)以文件大小由小到大的次序排序; ls -Sr

(3)以文件的最后修改时间的先后次序排序。 ls –c

4.为了修改文件f1(文件f1自己创建)的权限保护位,使文件属主拥有读、写和执行的权限,同组成员和其它用户仅可以读和执行,应该如何做? (用chmod命令)

chmod 755 f1

5.复制文件“/etc/hosts”到目录“/tmp”,然后设置其读写权限为:自己可以读、写和执行,组拥有者的用户可以读和执行,其他用户只可以执行。 cp /etc/hosts /tmp chmod 751 /tmp/hosts

6.复制文件“/etc/hosts”到目录“/tmp”,然后使用命令修改文件/tmp/hosts的属主为用户zhang,组拥有者为组zhang(使用chown和chgrp命令)。

chgrp zhang /tmp/hosts (更改所属组) chown zhang /tmp/hosts(改变所有者)

7.在用户主目录下查找文件长度恰好为100字节的文件。 find [起始目录] 寻找条件 操作 find /home/peter –size 100

8.某用户已经成功使用命令“mount /cdrom”加载使用光盘。参数“/cdrom”只是指定了把光盘加载到的目的位置,如果计算机安装有不止一个的CD-ROM,那么Linux系统应该能够选择其中一个使用。该用户查看了一些参考资料,了解到Linux系统中有个配置文件“fstab”存放有这些相关系统信息。请只使用一个命令把这个文件找出来并显示其内容到屏幕上。(用find命令) find /etc –name fstab –exec cat {} \\;

9.用find命令删除当前目录下所有的a.out或*.o文件。

$ find . \\(- name a.out - o - name ?*.o? \\)\\

> - atime +7 - exec rm {} \\;

说明如下: 命令中的“.”表示当前目录,此时find将从当前目录开始,逐个在其子目录中查找满足后面指定条件的文件。\\(和\\)表示括号(),其中的“\\” 称为转义符。之所以这样写是由于对Shell而言,(和)另有不同的含义,而不是这里的用于组合条件的用途。“- name a.out”是指要查找名为a.out的文件;“- name ?*.o?”是指要查找所有名字以 .o结尾的文件。这两个- name之间的- o表示逻辑或(or),即查找名字为a.out或名字以 .o结尾的文件,find在当前目录及其子目录下找到这佯的文件之后,再进行判断,看其最后访问时间是否在7天以前(条件-atime +7),若是,则对该文件执行命令rm(- exec rm{ }\\;)。其中{ }代表当前查到的符合条件的文件名,\\;则是语法所要求的(前面必须加空格)。上述命令中第一行的最后一个\\是续行符。当命令太长而在一行写不下时,可输入一个\\,之 后系统将显示一个>,指示用户继续输入命令。

如命令:要删除88.txt文件; find -name 88.txt -exec rm{}\\; 而应写成:

find -name 88.txt -exec rm {} \\; 问题解决

10. 如何确定系统中是否有“ps”命令?如果有,它的功能是什么? man ps

功能:查看当前系统中运行的进程信息

11.说出下列每一项信息各对应哪一类文件:

①drwxr-xr-x用户目录文件② /etc/passwd用户密码文件 ③ brw-rw-rw-块设备文件 ④ /dev/fd0 软驱设备文件 ⑤ /bin普通用户的可执行文件夹⑥ -rwx—x---用户命令文件

12.用grep命令在/etc/passwd文件中查找有关超级用户root的信息。 grep -F root /etc/passwd

13.查找文件file1中所有以b开头的行。(file1文件自己创建) grep ?^b? file1

14.查找文件file1中所有以a结尾的行。(file1文件自己创建) grep ?a$? file1

15.列出当前目录下的所有子目录名。(用grep命令) ls -l|grep ^d

16.用kill命令终止在tty1上的用户进程。

kill xxx即可,这里xxx代表与此软件运行相关的进程PID号 ps aux kil xxx

四.

1.使用vi打开一个新文档,并输入以下两行内容:

Linux is an operating system that was initially created as a hobby by a young student, Linus Torvalds, at the University of Helsinki in Finland. Linus had an interest in Minix, a small UNIX system, and decided to develop a system that exceeded the Minix standards.

The kernel, at the heart of all Linux systems, is developed and released under the GNU General Public License and its source code is freely available to everyone. It is this kernel that forms the base around which a Linux operating system is developed. 2、发出命令显示行号。 :set nu

3、保存到文件AboutLinux,不退出。 :w AboutLinux

保存命令

按ESC键 跳到命令模式,然后:

:w 保存文件但不退出vi

:w file 将修改另外保存到file中,不退出vi :w! 强制保存,不推出vi :wq 保存文件并退出vi

:wq! 强制保存文件,并退出vi q: 不保存文件,退出vi

:q! 不保存文件,强制退出vi

:e! 放弃所有修改,从上次保存文件开始再编辑

4、删除一句“It is this kernel that forms the base around which a Linux operating system is developed.”。

5、查找单词“Finland”。 命令模式下输入

/单词 正向查找单词 ?单词 反向查找单词

6、把第一行的“Finland”后的内容变成独立的一行。现在共有三行内容。 7、复制第二行的内容到文档的最后。 yy:复制光标所在行

p:粘贴复制的内容到光标所在行 8、删除第三行的内容。

x, 删除光标所在字符 dw, 删除光标所在单词 dd, 删除当前行

n dd:删除当前光标所在行开始的n行

9、恢复被删除的一行内容。 u:取消当前已个动作

10、查找所有的“Minix”并全部改为“MINIX”。

sed 实用工具以及其它任何类似的编辑器的最常用的命令之一是用一个值替换另一个值。用来实现这一目的的操作的命令部分语法是: 's/{old value}/{new value}/'

因而,下面演示了如何非常简单地将 \修改为 \: $ echo The tiger cubs will meet on Tuesday after school | sed 's/tiger/wolf/'

The wolf cubs will meet on Tuesday after school

全局修改

让我们开始一次看似简单的编辑。假定在要修改的消息中出现了多次要修改的项目。默认方式下,结果可能和预期的有所不同,如下所示:

$ echo The tiger cubs will meet this Tuesday at the same time as the meeting last Tuesday | sed 's/Tuesday/Thursday/' The tiger cubs will meet this Thursday at the same time as the meeting last Tuesday $

与 将出现的每个 \修改为 \相反,sed 编辑器在找到一个要修改的项目并作了修改之后继续处理下一行,而不读整行。sed 命令功能大体上类似于替换命令,这意味着它们都处理每一行中出现的第一个选定序列。为了替换出现的每一个项目,在同一行中出现多个要替换的项目的情况下, 您必须指定在全局进行该操作: $ echo The tiger cubs will meet this Tuesday at the same time as the meeting last Tuesday | sed 's/Tuesday/Thursday/g' The tiger cubs will meet this Thursday at the same time as the meeting last Thursday $

文档内修改:

:%s/Minix/MINIX /g(%:所有行 g:所有替换) 11、不保存并退出vi。

q!:exit vi edit(对修改不做保存)

12、使用vi再次打开文件AboutLinux。应该显示原来的两行内容。

13、在第二行后插入一行“He began his work in 1991 when he released version 0.02 and worked steadily until 1994 when version 1.0 of the Linux Kernel was released.”。

14、 在文档的最后增加一行“There are now literally hundreds of companies and organizations and an equal number of individuals that have released their own versions of operating systems based on the Linux kernel.”。 15、保存并退出vi。

16、设置文件AboutLinux的权限为400(“r--------”)。 chmod 400 AboutLinux

17、使用vi再次打开文件AboutLinux,并在文档最后增加一行“More information on the kernel can be found at our sister site, LinuxHQ and at the official Linux Kernel Archives.”。

并保存文档后退出。

五.

1.利用vi 建立一个脚本文件,其中包括date、cal、pwd、ls等常用命令。然后以不同方式执行该脚本. vim script (date cal pwd ls)

(1) bash

Top