Linux操作系统实验三 文件管理(一)(上)

简介: Linux操作系统实验三 文件管理(一)

1.实验目的与要求

  1. 了解Linux文件系统目录结构
  2. 掌握目录管理的相关操作
  3. 掌握文件管理的相关操作

2.实验平台

实验室安装的实验环境(Linux操作系统)和头歌(www.educoder.net)实验平台(课程实验)

3.实验内容

  1. 文件系统目录结构理论知识练习
  2. linux 下目录的创建、应用、查看、删除等操作
  3. linux 下文件的创建、编辑、内容查看、删除等操作

4.实验详细内容、步骤

任务描述

欢迎进行Linux世界,当你下载、安装了某个Linux发行版,体验了Linux桌面并安装了一些你喜爱和需要的软件之后,应该去了解下Linux真正的魅力所在:命令行。 每一个Linux命令其实就是一个程序,借助这些命令,我们可以办到非常多的事情。 第一个任务就是了解Linux的目录结构,与基本使用命令。

目录结构

Linux 文件系统是树形层次结构,具体如下图所示,最重要的是根目录(/)。

Linux命令行也叫终端,在命令行中只用键盘操作。由于实验会使用到图形化界面,所以在实验中还需要自己打开命令行。 实验环境使用的是 Ubuntu 16.04 ,可以点击左上角红框内容打开命令行,也可以鼠标右键打开命令行。

打开命令行之后可以看到当前用户以及所在目录。

root指的是用户名,~指的是当前所在目录,使用pwd可以查看当前所在目录。

切换目录的命令是cd,例如切换到根目录下就是:cd /,输入完毕之后回车就会执行该命令了。

Linux中路径也分为绝对路径和相对路径,绝对路径指的是从根目录开始计算路径,相对路径是从当前所在目录开始计算路径。 例如:切换到/root/os/linux-0.11-lab目录下,而当前在/root目录下。 切换目录的方式有两种,一种是通过相对路径切换:以当前目录为起点去切换。

一种是通过绝对路径切换:以根目录为起点去切换。

cd 的使用方法总结在下方:

  1. cd 进入用户主目录;
  2. cd ~ 进入用户主目录;
  3. cd - 返回进入此目录之前所在的目录;
  4. cd .. 返回上级目录(若当前目录为”/“,则执行完后还在”/“;”..”为上级目录的意思);
  5. cd ../.. 返回上两级目录;
  6. cd !$ 把上个命令的参数作为cd参数使用。

命令行中那么多命令,肯定是无法记住全部的,所以补全命令是非常好用的一个帮手,命令记不全的时候或者路径记不全的时候直接按两次Tab键就会出现当前可用的选项,完全可以说是最好用的帮手。

例如:记不全路径,可以使用按两次 Tab 查看有哪些目录可选。 (注意:由于 Linux 中目录也被当成文件,所以在不知道的情况下切换到一个文件中是会报错的。)

查看目录

进入目录之后使用ls命令查看当前目录下的内容。 ls命令的可用参数:

  1. -l:以长格式显示目录下的内容列表。输出的信息从左到右依次包括文件名,文件类型、权限模式、硬连接数、所有者、组、文件大小和文件的最后修改时间等;
  2. -a:显示所有文件和文件夹(包括隐藏文件/文件夹)。

其中ls -l可以缩写为ll。 如果在后面添加路径就可以查看指定路径下的文件,不需要切换到该路径下才能查看。

文件操作

Linux系统中最常用的文件操作有创建、删除文件等。

创建文件

Linux 中创建文件的常用命令是touch,命令格式如下:

touch filename

有时可能需要创建一个空的文件的情况。在这种情况下,可以使用touch命令来轻松创建一个空文件。

例如:创建一个新的文件testfile可以使用如下命令。

touch testfile

如果想同时创建多个文件也可以使用touch命令完成,具体格式如下:

touch file1 file2 ...

只需将不同的文件名用空格分隔即可完成创建多个文件。

删除文件

Linux中常用的删除文件的命令是rm,使用格式如下:

rm [命令选项] filename

常用命令选项:

  1. -f:强制删除文件或目录;
  2. -r或-R:递归处理,将指定目录下的所有文件与子目录一并处理;
  3. -i:删除已有文件或目录之前先询问用户。

例如,删除我们刚刚创建的文件testfile可以使用如下命令。

rm -f testfile

文件夹操作

Linux中关于文件夹的操作主要包括创建和删除等。

创建文件夹

Linux中创建文件夹命令是mkdir,命令格式如下:

mkdir [命令选项] dirname

常用命令选项: -p--parents 若所要建立目录的上层目录目前尚未建立,则会一并建立上层目录;

例如:我们新创建一个文件夹testdir可以使用如下命令。

mkdir testdir

因为新创建的文件夹是一个空的文件夹,所以使用ls -l显示的结果是空。

删除文件夹

Linux中删除文件夹的命令是rmdir或者rm -r,命令格式如下:

rmdir [命令选项] dirname

常用命令选项:-p--parents:删除指定目录后,若该目录的上层目录已变成空目录,则将其一并删除;

例如:将刚刚新创建的文件夹testdir删除可以使用如下命令。

rmdir testdir

文件和文件夹拷贝

Linux使用cp命令用来将一个或多个源文件或者目录复制到指定的目录中,命令格式如下:

cp [命令选项] 源文件 目的文件

常用命令选项:

  1. -f:强行复制文件或目录,不论目标文件或目录是否已存在;
  2. -i:覆盖既有文件之前先询问用户;
  3. -p:保留源文件或目录的属性;
  4. -R/r:递归处理,将指定目录下的所有文件与子目录一并处理。

例如:新建一个文件newfile和一个文件夹newdir,将newfile复制到newdir目录下。具体命令如下。

  1. touch newfile
  2. mkdir newdir
  3. cp newfile newdir
文件和文件夹移动/重命名

Linux 使用mv命令用来对文件或目录重新命名,或者将文件从一个目录移到另一个目录中,命令格式如下:

mv [命令选项] 源文件 目标文件

常用命令选项:

  1. -f:强行复制文件或目录,不论目标文件或目录是否已存在;
  2. -i:覆盖既有文件之前先询问用户;
  3. -p:保留源文件或目录的属性;
  4. -R/r:递归处理,将指定目录下的所有文件与子目录一并处理'。

例如:新建一个文件newfile和一个文件夹newdir,将newfile剪切到newdir目录下,并重新命名为newfileCpy。具体命令如下。

  1. touch newfile
  2. mkdir newdir
  3. mv newfile newdir/newfileCpy

作答要求

根据相关知识,完成下列任务: 1.在根目录下创建一个文件夹命名为linux; 2.在根目录下创建一个文件命名为hello.txt; 3.将文件复制到linux文件夹下,并且改名为1.txt; 4.删除根目录下的hello.txt

任务描述

第二个任务就是了解Linxu的文件查看命令,文件编辑基本命令。

文件查看命令

我们要查看一些文本文件的内容时,要使用文本编辑器来查看。在Linxu下,可以使用一些命令预览文本文件中的内容,而不必使用文本编辑器打开查看。就好比查看图片一般点击图片就可以查看,不需要下载专门的图片软件。本关卡主要介绍的是常用查看命令,例如:cat、head、tail 与 nl 。

cat 命令

cat命令用于连接文件并打印到标准输出设备上,有很多叫它“猫咪”命令,但cat命令其实是 concatenate(连续)的缩写,即连续显示文本内容。cat命令常常用于查看内容较少的文件,因为文件太大时,前面的内容就滚出屏幕,看不到了。

head 命令

head命令可用于查看文件的开头部分的内容,有一个常用的参数-n用于显示行数,默认为 10,即显示 10 行的内容。

如果查看文件前 5 行,可以使用命令head -5 山谷的起点.txt

tail 命令

tail命令用途是依照要求将指定的文件的最后部分输出到标准设备,通常是终端,通俗讲来,就是把某个档案文件的最后几行显示到终端上,假设该档案有更新,tail会自己主动刷新,确保你看到最新的档案内容。 查看最后文件 5 行命令tail -5 山谷的起点.txt

nl 命令

nl命令将指定的文件添加行号标注后写到标准输出。空行不显示行号。

文件编辑基本命令

对于文件的编辑操作可以使用vi/vim编辑器,vimvi的升级版,二者操作基本上相同。 对于编辑器的基本命令如下: vi filename:打开文件。 键盘输入i或者a进行编辑:最底下出现insert就进入编辑模式可以进行编辑了。 键盘按Esc键:退出编辑模式。 键盘输入:q:强制退出编辑并不保存。 键盘输入:wq或者:x:保存文件并退出。

编程要求

根据提示,在右侧图形化页面打开终端在/home/headless文件夹中创建文件test.txt,在文件中输入Hello,Linux!

测试说明

平台会对你创建的 test.txt 进行测试: 是否成功创建文件test.txt,文件内容是否为Hello,Linux!。 预期输出: test.txt创建成功!文件内容正确!

任务描述

Windows系统上查看磁盘的使用情况比较容易,直接打开我的电脑即可看到该磁盘使用情况,而在Linux上没有像Windows那么强大的图像化界面,那么要想查看Linux下磁盘的使用情况该如何操作,通过本关的学习,我们将通过简单的几个命令就可以实现查看Linux磁盘的使用情况。

本关任务:显示磁盘分区上的可使用的磁盘空间和文件/目录使用的空间。

df命令详解

df命令用于显示磁盘分区上的可使用的磁盘空间。默认显示单位为KB。可以利用该命令来获取硬盘被占用了多少空间,目前还剩下多少空间等信息。

具体命令如下:

df 命令参数 参数

常用参数如下:

  • -a或--all:包含全部的文件系统,包括系统特有的/proc等文件系统;
  • -k : 以KB为单位显示各文件系统;
  • -m : 以MB为单位显示各文件系统;
  • -h : 以可读性较高的方式来显示信息;
  • -i或--inodes:显示inode的信息。
du命令详解

du命令也是查看使用空间的,但是与df命令不同的是Linuxdu命令是对文件和目录磁盘使用的空间的查看,还是和df命令有一些区别的。

具体命令如下:

du 命令参数 参数

常用参数如下:

  • -a : 列出所有的文件与目录容量,因为默认仅统计目录下面的文件量而已;
  • -h : 以可读性较高的方式来显示信息;
  • -k : 以KB为单位显示容量;
  • -m : 以MB为单位显示容量;
  • -s : 列出总量,不列出每个目录占用的容量。

编程要求

根据右侧窗口命令行内的提示,在Begin - End区域内进行命令行语句补充,具体任务如下:

  • 以可读性较高的方式显示系统已存在文件oldFile的所占磁盘大小;
  • 列出系统已存在目录./oldDir下的所有文件的总容量,同时将每个文件大小也列出来;

任务描述

通过本关实训,我们将学会如何在Linux系统上创建一个超链接文件,在Windows上创建一个链接文件非常简单,只需要点右键选择创建链接就可以,而在Linux上创建就相对比较麻烦。

本关任务:对已有文件/目录创建链接。

Linux硬链接

硬链接指通过索引节点来进行链接。在Linux的文件系统中,保存在磁盘分区中的文件不管是什么类型都给它分配一个编号,称为索引节点号(Inode Index)。在Linux中,多个文件名指向同一索引节点是存在的。一般这种链接就是硬链接。

硬链接的作用是允许一个文件拥有多个有效路径名,这样用户就可以建立硬链接到重要文件,以防止误删的功能。其原因如上所述,因为对应该目录的索引节点有一个以上的链接。只删除一个链接并不影响索引节点本身和其它的链接,只有当最后一个链接被删除后,文件的数据块及目录的链接才会被释放。也就是说,文件真正删除的条件是与之相关的所有硬链接文件均被删除。

硬链接特点如下:

  • 文件有相同的inodedata block
  • 只能对已存在的文件进行创建;
  • 不能交叉文件系统进行硬链接的创建;
  • 不能对目录进行创建,只可对文件创建;
  • 删除一个硬链接文件并不影响其他有相同inode号的文件。

具体命令如下:

ln 源文件 目标文件

Linux软链接

软链接文件有类似于Windows的快捷方式。它实际上是一个特殊的文件。在符号链接中,文件实际上是一个文本文件,其中包含的有另一文件的位置信息。

与硬链接不同的是,符号链接确实是一个新文件,当然它具有不同的I节点号;而硬链接并没有建立新文件。

软链接特点如下:

  • 源文件和目标文件有不相同的inodedata block
  • 软链接没有硬链接的限制,可以对目录文件做符号链接;
  • 软链接可以在不同文件系统之间做软链接;
  • 在目录长列表中,符号链接作为一种特殊的文件类型显示出来,其第一个字母是l
  • 符号链接的大小是其链接文件的路径名中的字节数;

具体命令如下:

ln -s 源文件 目标文件

目录
相关文章
|
4月前
|
Ubuntu 物联网 Linux
从零安装一个Linux操作系统几种方法,以Ubuntu18.04为例
一切就绪后,我们就可以安装操作系统了。当系统通过优盘引导起来之后,我们就可以看到跟虚拟机中一样的安装向导了。之后,大家按照虚拟机中的顺序安装即可。 好了,今天主要介绍了Ubuntu Server版操作系统的安装过程,关于如何使用该操作系统,及操作系统更深层的原理,还请关注本号及相关圈子。
|
4月前
|
Ubuntu Unix Linux
操作系统的最强入门科普(Unix/Linux篇)
下期文章,小枣君会重点聊聊Windows和macOS那条线。敬请关注! 如果大家觉得文章不错,还请帮忙多多转发!谢谢!
|
4月前
|
监控 Ubuntu Linux
什么Linux,Linux内核及Linux操作系统
上面只是简单的介绍了一下Linux操作系统的几个核心组件,其实Linux的整体架构要复杂的多。单纯从Linux内核的角度,它要管理CPU、内存、网卡、硬盘和输入输出等设备,因此内核本身分为进程调度,内存管理,虚拟文件系统,网络接口等4个核心子系统。
346 0
|
4月前
|
Unix 物联网 Linux
都什么年代了,你还不懂啥是Linux操作系统
至于华为鸿蒙操作系统是不是独树一帜,这个留给各位阅读本文的网友们来讨论
126 0
|
4月前
|
Web App开发 缓存 Rust
|
4月前
|
安全 Linux iOS开发
linux属于什么操作系统
Linux是一种自由和开放源代码的操作系统,具有高度的灵活性和可定制性。与常见的操作系统如Windows和macOS相比,Linux具有自由、安全和稳定等优势。Linux已广泛应用于服务器、桌面电脑、超级计算机和嵌入式设备等领域,并且在未来的发展前景广阔。由于其自由和开放源代码的特性,Linux还促进了计算机技术和社区的发展,为全球的计算机用户提供了更多的选择和可能性。
|
4月前
|
安全 Ubuntu Unix
关于Linux操作系统,你必须要知道的事
我们可以看到无论是Debian还是Buildroot都有各自的特点,为客户提供了更大的选择空间和灵活性,大家可以根据自己的需求选择合适的版本来满足终端用户的体验和功能需求。从平技术将会一直关注更多更安全、灵敏、易于开发的Linux版本,做好适配工作,不断为客户带来“简单开发、方便应用”的使用体验。
|
4月前
|
安全 Ubuntu Linux
如何安装Linux操作系统?
此时,您可以选择重新启动计算机,然后从硬盘上的Linux系统启动。以上是一个大致的安装过程。请注意,不同的Linux发行版可能会在细节上有所差异,因此在进行安装之前,请确保您阅读并理解了相应发行版的安装指南或文档。
|
3月前
|
Linux 应用服务中间件 Shell
二、Linux文本处理与文件操作核心命令
熟悉了Linux的基本“行走”后,就该拿起真正的“工具”干活了。用grep这个“放大镜”在文件里搜索内容,用find这个“探测器”在系统中寻找文件,再用tar把东西打包带走。最关键的是要学会使用管道符|,它像一条流水线,能把这些命令串联起来,让简单工具组合出强大的功能,比如 ps -ef | grep 'nginx' 就能快速找出nginx进程。
468 1
二、Linux文本处理与文件操作核心命令

热门文章

最新文章