资源简介 (共89张PPT)*项目2 文件系统与磁盘管理Linux操作系统管理与服务器配置(Rocky Linux 8.6)*项目描述A 公司是一家拥有上百台服务器的公司。网络管理员小彭将服务器操作系统安装完成后,在操作该系统时,面对的都是各种各样的文件。作为一名合格的网络管理员,必须熟悉Linux 文件系统目录的结构及作用,掌握常用文件和目录的操作命令,掌握命令行下功能强大的 vim 编辑器的使用方法。服务器的存储管理是网络管理员的日常维护工作,作为公司的网络管理员,必须掌握磁盘的分区、格式化及挂载等操作;为了避免有些用户无限制地使用磁盘空间,网络管理员最好对用户能够使用的最大磁盘空间进行限制。本项目主要介绍 Linux 操作系统中的文件和目录操作命令、vim 编辑器的使用方法和支持的文件系统类型,以及如何对磁盘进行分区、挂载等。项目2 文件系统与磁盘管理*项目2 文件系统与磁盘管理*任务2.1 管理文件与目录项目2 文件系统与磁盘管理任务描述A公司的网络管理员小彭听从工程师的建议,开始研究Linux操作系统的常用操作,找了很多资料后,决定首先学习文件目录管理。任务2.1 管理文件与目录任务要求管理文件与目录是 Linux 基础命令中应用得相对较多的命令,也是 Linux 操作系统管理中基础的岗位能力,可作为广大初学者的首选学习内容。本任务的具体要求如下所示。(1)在根目录下建立/test、/test/etc、/test/exer/task1、/test/exer/task2 目录,并使用 tree 命令查看/test 目录的结构。(2)复制/etc/目录下所有以字母“a”“b”“c”开头的文件到/test/etc 目录下(包括子目录),将当前目录切换到/test/etc 目录,以相对路径的方式查看/test/etc 目录下的内容。(3)将当前目录切换到/test/exer/task1 目录,在当前目录下建立 file1.txt 和 file2.txt 空文件,并将 file2.txt 文件更名为 file4.txt,使用相对路径的方式将/test/etc/bashrc 文件复制成/test/exer/task1/file3.txt 新文件,并查看当前目录下的文件。任务2.1 管理文件与目录任务要求(4)以绝对路径的方式,直接删除/test/etc 目录下以“cron”开头的所有文件或子目录,移动/test/etc 目录下以“ch”开头的文件或子目录到/test/exer/task2 目录下。(5)查看/test/etc 目录下以“al”开头的文件的文件类型。(6)将当前目录切换到/test/exer/task1 目录,使用相对路径的方式为 file1.txt 文件建立硬链接,链接文件为 file5.txt 文件,为 file3 文件建立软链接,链接文件为 file6.txt 文件,链接文件存放于/test/exer/task2 目录下,查看两个目录下的文件列表。(7)使用 echo 命令建立/var/info1 文件,文件内容如下所示。BananaOrangeApple任务2.1 管理文件与目录任务要求(8)统计/etc/sysctl.conf 文件中的字节数、单词数、行数,并将统计结果存放在/var/info2文件中。(9)使用命令查看/var/info1 文件前两行的内容,并将输出结果存放在/var/info3 文件中。(10)使用命令查找/etc 目录下名以“c”开头、以“conf”结尾、大于 5 KB 的文件,并将查询结果存放在/var/info4 文件中。(11)使用命令查看/var/info1 文件后两行的内容,并将输出结果存放在/var/info5 文件中。(12)使用命令输出/var/info1 文件中不包括“pp”字符串的行,并输出行号,将输出结果存放在/var/info6 文件中。任务2.1 管理文件与目录任务资讯1.文件系统文件系统是操作系统用来存储和管理文件的系统。从操作系统的角度来看,文件系统能对文件的存储空间进行组织和分配,并对文件进行权限控制。从用户的角度来看,文件系统可以帮助用户创建文件,并对文件进行读/写、删除等操作。Linux操作系统通过分配文件块的方式把文件存储在存储设备中,而分配信息本身也存在于磁盘中,不同的文件系统用不同的方法分配和读取文件块。不同的操作系统使用不同类型的文件系统,为了与其他操作系统兼容,交互数据,每个操作系统都支持多种类型的文件系统,如 Windows 操作系统支持 FAT、NTFS 等文件系统;Linux 操作系统保存数据的磁盘分区通常支持 Ext3、Ext4、XFS 等文件系统,实现虚拟存储的 SWAP 分区支持 SWAP 等文件系统。Linux 操作系统中常用的文件系统及其功能见表 2-1-1。任务2.1 管理文件与目录任务资讯任务2.1 管理文件与目录任务资讯2.Linux文件系统的层次结构请读者回想一下在Windows操作系统管理文件的方式。一般来说,人们会把文件和目录按照不同的用途存放在C盘、D盘等以不同盼复表示的分区中。而在Linux文件系统中,所有的文件和目录都被组织在一个被列为“根目录”的节点中,用“/”表示。在根目录中可以创建子目录和文件,子目录中还可以继续创建目录和文件。所有目录和文件行程一颗以根目录为根节点的倒置的目录树,目录树的每个节点都代表一个目录或文件。Linux文件系统的层次结构如图2.1.1所示。任务2.1 管理文件与目录任务资讯Linux的目录使用树形结构管理,系统默认的目录都有特定的内容,有些目录很重要,在操作时应注意不要误操作,Rocky Linux 8.6 操作系统自带的目录及其功能见表 2-1-2。任务2.1 管理文件与目录任务资讯(1)文件名文件名是文件的标识符,Linux 操作系统中的文件名需遵循以下约定。① 文件名可以使用英文字母、数字及一些特殊字符,但是不能包含如下表示路径或在Shell 中有含义的字符。/ ! # * & \ , ; <> [] {} ( ) ^ @ % | “ ‘ `② 目录名或文件名是严格区分大小写的,如“A.txt”“a.txt”“A.TXT”是 3 个不同的文件,但不建议使用字符大小写来区分不同的文件或目录。③ 当文件名以句点(.)开头时,说明该文件为隐藏文件,通常不显示,在使用 ls-a 命令后才可以看到。④ 目录名或文件名的长度不能超过 255 个字符。⑤ 文件的扩展名对 Linux 操作系统没有特殊的含义,这与 Windows 操作系统不同。任务2.1 管理文件与目录任务资讯(2)文件类型Windows中文件的类型通常由扩展名决定,而在Linux中文件的扩展名的作用则没有如此强大。当然在Linux中文件的扩展名也遵循一些约定,如压缩文件一般用“.zip”,RPM软件包一般用“.rpm”,TAR归档包一般用“.tar”,GZIP压缩文件一般用“.gz”等。在Linux中,所有的目录和设备都是以文件的形式存在的。常见的Linux文件类型包括普通文件、目录文件、设备文件、管道文件、链接文件和套接字文件。任务2.1 管理文件与目录任务资讯(1)普通文件用ls -l命令查看某个文件的属性,可以看到类似“-rw-r—r--”的属性符号。文件属性第1个字符“-”表示文件类型为普通文件。这些文件一般是用一些相关的应用程序创建的。使用ls命令可查看/root目录下的文件,查看其文件属性的命令如例2.1.1所示。例2.1.1:查看文件属性[root@bogon ~]#ls -l /root-rw-------. 1 root root 1558 6月 9 19:32 anaconda-ks.cfg-rw-r--r--. 1 root root 1606 6月 9 19:35 initial-setup-ks.cfg//两个文件属性的第1个字符均是“-”表示g是普通文件。任务2.1 管理文件与目录任务资讯(2)目录文件如果看到某个文件属性的第1个字符是“d”,这样的文件在Linux中就是目录文件。使用ls命令可查看/home目录下的文件,查看其文件属性的命令如例2.1.2所示。例2.1.2:查看目录文件属性[root@bogon ~]#ls -l /homedrwx------. 14 admin admin 4096 6月 9 19:35 admin//第1个字符“d”表示admin是一个目录文件。任务2.1 管理文件与目录任务资讯(3)设备文件Linux下的/dev目录中有大量的设备文件,主要是块设备文件和字符设备文件。块设备的主要特点是可以随机读写,而最常见的块设备就是磁盘,执行ls -l /dev|grep sd命令可查看块设备文件,查看其块设备文件的命令如例2.1.3所示。例2.1.3:查看块设备文件[root@bogon ~]#ls -l /dev/|grep sdbrw-rw----. 1 root disk 8, 0 6月 9 19:32 sdabrw-rw----. 1 root disk 8, 1 6月 9 19:32 sda1brw-rw----. 1 root disk 8, 2 6月 9 19:32 sda2//sda、sda1等均表示磁盘或磁盘中的分区,其属性的第一个字符为“b”,这里的“b”表示文件类型为块设备文件。任务2.1 管理文件与目录任务资讯常见的字符设备文件是打印机和终端,可以接收字符流。/dev/null是一个非常有用的字符设备文件,送入这个设备的所有内容均会被忽略。使用ls命令可查看其属性,查看其文件属性的命令如例2.1.4所示。例2.1.4:查看字符设备文件[root@bogon ~]#ls -l /dev/|grep nullcrw-rw-rw-. 1 root root 1, 3 6月 9 19:32 null//可以看出其属性的第1个字符为“c”,这里的“c”表示文件类型为字符设备文件。任务2.1 管理文件与目录任务资讯(4)管道文件管道文件有时也叫做FIFO文件,其文件属性的第1个字符为“p”,在/run/system/sessions目录中可以查看管道文件,查看其管道文件的命令如例2.1.5所示。例2.1.5:查看管道文件属性的命令[root@bogon ~]#ls -l /run/systemd/sessions/|grep pprw-------. 1 root root 0 6月 9 19:35 1.refprw-------. 1 root root 0 6月 9 19:36 2.refprw-------. 1 root root 0 6月 13 12:00 41.refprw-------. 1 root root 0 6月 13 12:00 42.ref任务2.1 管理文件与目录任务资讯2.文件类型(5)链接文件链接文件有2中类型,即软链接文件和硬链接文件。软链接文件又叫符号链接文件,这个文件包含了另一个文件的路径名,可以是任意文件或目录,可以链接不同文件系统的文件。软链接文件属性的第1个字符为“l”。查看其链接文件的命令如例2.1.6所示。任务2.1 管理文件与目录任务资讯例2.1.6:查看链接文件[root@bogon ~]#ls -lh /etc/|grep rc.dlrwxrwxrwx. 1 root root 11 6月 9 19:25 init.d -> rc.d/init.dlrwxrwxrwx. 1 root root 10 6月 9 19:25 rc0.d -> rc.d/rc0.dlrwxrwxrwx. 1 root root 10 6月 9 19:25 rc1.d -> rc.d/rc1.dlrwxrwxrwx. 1 root root 10 6月 9 19:25 rc2.d -> rc.d/rc2.dlrwxrwxrwx. 1 root root 10 6月 9 19:25 rc3.d -> rc.d/rc3.dlrwxrwxrwx. 1 root root 10 6月 9 19:25 rc4.d -> rc.d/rc4.d//可以看到,/etc目录中存在rc0.d及rc1.d等文件,它们均是来源于/etc/rc.d 子目录下相应文件的软链接文件。关于链接文件的具体实现将在后面的章节中介绍。任务2.1 管理文件与目录任务资讯(6)套接字文件通过套接字文件,可以实现网络通信,套接字文件属性的第1个字符是“s”,/dev/log文件就是套接字文件。查看其文件属性的命令如例2.1.7所示。例2.1.7:查看套接字文件属性的命令[root@bogon ~]#ls -l /dev/logsrw-------. 1 root root 0 7月 31 05:46 /run/systemd/coredump任务2.1 管理文件与目录任务资讯4.目录路径操作文件或者文件夹时,一般应指定路径,否则默认是对当前的目录进行操作。路径一般分为绝对路径和相对路径。(1)绝对路径绝对路径就是从根目录“/”开始到指定文件或者目录的路径。总是从根目录“/”开始,通过“/”来分隔目录名来组成。(2)相对路径相对路径是指从当前目录出发,到达指定文件或者目录的路径,当前目录一般不会出现在路径中。还可以配合特殊目录“.”和“..”来灵活的切换路径,或者选择指定目录和文件。绝对路径和相对路径具体形式如例2.1.8所示。任务2.1 管理文件与目录任务资讯例2.1.8:绝对路径和相对路径形式当前目录是“abrt”,比如要操作abrt.conf,用绝对路径表示“/etc/abrt/abrt.conf”,用相对路径表示是“ abrt.conf”或者“./abrt.conf”。再比如当前目录是“abrt”,要操作“actions”文件夹,用绝对路径表示“/etc/acpi/actions”,用相对路径表示是“../acpi/actions”,即“../”表示“abrt”的父目录“etc”,接下来是“acpi/actions”。[root@bogon etc]#tree abrtabrt├── abrt-action-save-package-data.conf├── abrt.conf├── gpg_keys.conf└── plugins├── CCpp.conf├── oops.conf├── python.conf├── vmcore.conf└── xorg.conf任务2.1 管理文件与目录任务资讯5.Linux命令的结构Linux 操作系统中所有的管理都可以通过命令行来完成,因此作为一名合格的 Linux 操作系统管理员,学会用命令行来管理系统是非常必要的。在学习具体的 Linux 命令之前,应了解 Linux 命令的基本结构。Linux 命令一般由命令名、选项和参数组成,其中选项和参数为可选项,其基本格式如下所示。命令名 [选项] [参数]任务2.1 管理文件与目录任务资讯(1)命令名命令名是命令的表示,表示命令的基本功能,在命令提示符下输入的必须是命令,或者是可执行程序的路径,或者是脚本的路径、名字。(2)选项。选项的作用是修改命令的执行方式及特性,命令只会执行最基本的功能,若要执行更高级、更复杂的功能,则需要为命令提供相应的选项。(3)参数。参数表示命令的作用对象,一般跟在选项后面,参数可以是文件或目录,可以没有,也可以有多个,有些命令必须多个参数才可以正确执行。任务2.1 管理文件与目录任务资讯6.使用命令操作的一般规律(1)命令名、文件名、选项和参数等严格区分英文字母大小写,且命令名始终在最前面。(2)命令、选项和参数之间也必须用空格分隔。(3)选项可以同时使用多个,而且选项有长和短之分。①短选项:通常用一个短线(-)和一个字母来引导,如果在命令中加入多个短选项,那么可以用一个短线(-)把多个选项组合在一起引导,组合引导选项与选项之间无须隔开,也可以每个短选项都单独用一个短线(-)引导,但需要用空格隔开。②长选项:通常用两个短线(--)和单词格式的选项作为引导,长选项通常不能组合,必须分开引导。任务2.1 管理文件与目录任务资讯(4)同时使用多个参数,各个参数之间必须用空格分隔。(5)可以使用“\”来转移回车符,以实现一条命令跨越多行的情况。(6)可以使用 Tab 键来自动补齐,若给定的字符串只有一条唯一对应的命令,则直接补全;若按两次 Tab 键,则会将所有以当前已输入字符串开头的命令显示在列表中。Linux 命令行窗口的“自动补全”功能如例 2.1.9 所示。2.1.9:Linux 命令行窗口的“自动补全”功能[root@bogon ~]#rm //输入rm后按两次Tab键rm rmail rmail.postfix rmdir rmmod[root@bogon ~]#rmdir //输入rmdi后按Tab键,rmdir自动补全任务2.1 管理文件与目录任务资讯7.文件和目录浏览类命令(1)显示当前工作目录pwd命令pwd命令用于显示当前工作目录的完整路径。pwd命令的使用比较简单,在默认情况下不带任何参数,执行该命令即可显示当前工作目录,如例2.1.10所示。例2.1.10:pwd命令的基本用法[root@bogon ~]#pwd/root用户通过文本方式登录系统后,默认的工作目录是登录用户的主目录。例如2.1.12显示了使用root用户登录系统后的工作目录是/root。任务2.1 管理文件与目录任务资讯(2)切换目录cd命令用户登录时默认工作目录是自己的家目录(root的家目录“/root”,普通用户的家目录在“/home/用户名”下)。如果切换工作目录,可以使用cd命令实现不同目录切换。其基本语法如下。cd [目录路径]除了使用绝对路径或相对路径表示目标路径外,还可以时可用一些特殊符号表示目标路径,以简化命令的输入,可以和cd命令配合使用的特殊符号如表2-1-3所示。任务2.1 管理文件与目录任务资讯cd命令的基本用法如例2.1.11所示。例2.1.11:cd命令的基本用法[root@bogon ~]#pwd/root[root@bogon ~]#cd . //进入当前目录,实际工作目录并未改变[root@bogon ~]#pwd/root[root@bogon ~]#cd .. //进入上一级目录[root@bogon /]#pwd/[root@bogon ~]#cd ~ //进入至当前登录用户主目录[root@bogon ~]#cd /etc/tuned //改变目录至绝对路径/etc/tuned下[root@bogon tuned]#pwd/etc/tuned[root@bogon ~]#cd ~root //进入root用户的主目录录[root@bogon ~]#pwd/root任务2.1 管理文件与目录任务资讯(3)ls命令ls命令的主要作用是显示某个目录下的内容,经常和cd命令配合使用。一般来说,通过cd命令切换到新的目录后,通过ls命令可以查看该目录中有哪些文件和子目录。ls命令的基本语法如下。ls [选项] [目录名称]其中,参数“目录名称”表示要查看具体内容的目标目录,如果省略,则表示查看当前目录下的内容。ls命令有许多选项,使ls命令的显示结果形式多样。ls命令的查看选项及其功能如表2-1-4所示。任务2.1 管理文件与目录任务资讯ls命令中最常被使用的选项应该是-l,通过它可以在每一行中显示每个文件的详细信息。文件的信息信息包括7列,每一列的含义如表2-1-5所示。任务2.1 管理文件与目录任务资讯ls 命令的基本用法如例 2.1.12 所示。例 2.1.12:ls 命令的基本用法任务2.1 管理文件与目录任务资讯(4)cat、less、tail、more命令① cat命令cat命令的作用是是滚动显示文件内容,或者将几个文件合并成一个文件。cat命令的基本语法如下。cat [选项] 文件列表cat命令的常用选项及其功能如表2-1-6所示。任务2.1 管理文件与目录任务资讯cat 命令的基本用法如例 2.1.13 所示。例 2.1.13:cat 命令的基本用法任务2.1 管理文件与目录任务资讯② more命令在使用 cat 命令显示文件内容时,若文件太长,输出的内容无法分页显示,而 more 命令则通常用于分页显示文件内容,即一次显示一页内容,可翻页,但仅支持向下翻页。more 命令的基本语法如下所示。[root@bogon ~]#more [选项] 文件名在大部分情况下,可以不加任何选项直接执行 more 命令查看文件内容。当使用 more 命令打开文件后,按 Enter 键可以向下移动一行,按 F 键或空格键向下翻一页,按 B 键或“Ctrl+B”组合键向上翻半页,按 Q 键退出 more 命令。more 命令经常和管道命令组合使用,即将一条管道命令的输出作为 more 命令的输入。管道命令将在后面详细介绍。more命令的基本用法如例2.1.14所示。例2.1.16:more命令的基本用法[root@bogon ~]#more install.log //分屏查看install.log文件内容任务2.1 管理文件与目录任务资讯③ less命令less 命令的功能比 more 命令更强大,用法也更灵活,less 命令是 more 命令的增强版,more 命令只能向下翻页,less 命令可以向下或向下翻页,除了 more 命令的功能,还可以按 B键向上翻一页,按空格键向下翻一页,按 U 键或“Ctrl+U”组合键向上翻半页,按 Q 键退出less 命令。任务2.1 管理文件与目录任务资讯④ head命令head 命令可以查看文件开头的 n 行内容,默认情况下,head 命令只显示文件的前 10 行。head命令的基本语法如下。head [选项] 文件列表head命令的常用选项及其功能如表2-1-7所示任务2.1 管理文件与目录任务资讯head 命令的基本用法如例 2.1.15 所示。例 2.1.15:head 命令的基本用法任务2.1 管理文件与目录任务资讯⑤ tail命令和head命令相反,tail 命令用来查看文件的最后几行内容,默认情况下显示文件最后 10行的内容。-c 和-n 选项对 tail 命令也同样适用。tail 命令的基本用法如例 2.1.16 所示。。例2.1.16:tail命令的基本用法[root@bogon ~]#cd /etc[root@bogon etc]#cat issue[root@bogon etc]#tail -c 6 issue //显示issue的后6字节n \m [root@bogon etc]#tail -n 2 issue //显示issue的后2行Kernel \r on an \m任务2.1 管理文件与目录任务资讯(5)wc命令wc命令用于统计并输出一个文件的行数、单词数和字节数。wc命令的基本语法如下。wc [选项] 文件列表wc命令的常用选项及其功能如表2-1-8所示任务2.1 管理文件与目录任务资讯wc 命令的基本用法如例 2.1.17 所示。例2.1.17:wc 命令的基本用法[root@bogon ~]#cd /etc[root@bogon etc]#cat issue[root@bogon etc]#wc issue //输出文件中的行数、单词数和字节数3 6 23 issue任务2.1 管理文件与目录任务资讯8.文件和目录操作类命令(1)touch命令touch命令格式如下。touch [选项] 文件名touch命令的第一个主要作用是创建一个新文件。当指定的文件不存在时,touch命令会在当前的目录下用指定的文件名创建一个新文件。touch命令的第二个作用是修改已有文件的时间戳。touch命令的常用选项及其功能如表2-1-9所示。任务2.1 管理文件与目录任务资讯touch 命令的基本用法如例 2.1.18 所示。例 2.1.18:touch 命令的基本用法[root@bogon ~]#touch file1 file2 //在当前目录下创建file1和file2两个文件[root@bogon ~]#ls -l file1 file2-rw-r--r--. 1 root root 0 7月 31 19:44 file1-rw-r--r--. 1 root root 0 7月 31 19:44 file2任务2.1 管理文件与目录任务资讯(2)创建目录mkdir命令mkdir命令可以创建一个目录,其基本语法如下。mkdir [选项] 目录名mkdir命令的常用选项及其功能如表2-1-10所示。任务2.1 管理文件与目录任务资讯mkdir 命令的基本用法如例 2.1.19 所示。例 2.1.19:mkdir 命令的基本用法[root@bogon ~]#mkdir test1 //创建test子目录[root@bogon ~]#mkdir -p test2/share //带-p选项连续创建两级目录[root@bogon ~]#ls -l-rw-------. 1 root root 1519 7月 31 19:05 anaconda-ks.cfg-rw-r--r--. 1 root root 0 7月 31 19:44 file1-rw-r--r--. 1 root root 0 7月 31 19:44 file2-rw-r--r--. 1 root root 1567 7月 31 19:06 initial-setup-ks.cfgdrwxr-xr-x. 3 root root 19 7月 31 19:21 test1drwxr-xr-x 3 root root 19 7月 31 22:15 test2 //test2目录被自动创建[root@bogon ~]# ls -l test2drwxr-xr-x 2 root root 6 7月 31 22:15 share任务2.1 管理文件与目录任务资讯(3)cp命令cp命令的主要作用是复制文件或目录,其基本语法如下。cp [选项] 源文件或源目录 目标文件或目标目录cp命令的功能非常强大,通过使用不同的选项,可以实现不同的复制功能。cp命令的常用选项及其功能如表2-1-11所示。任务2.1 管理文件与目录任务资讯cp 命令的选项解析如下。① 若目标文件不存在,则复制源文件为目标文件。② 若目标文件存在且目标文件是文件时,则将目标文件覆盖;若目标文件是目录,则将源文件复制到目标目录下,并保持原名。③ 若源文件不止一个,则目标文件必须是目录。④ 若源文件是目录,则可以根据需求使用-p、-a、-r、-f 选项中的任何一个完成复制。任务2.1 管理文件与目录任务资讯cp 命令的基本用法如例 2.1.20 所示。例 2.1.20:cp 命令的基本用法[root@bogon ~]#cp file1 file2 test1 //file1和file2文件复制到test1目录下[root@bogon ~]#ls -l test1-rw-r--r--. 1 root root 0 7月 31 19:48 file1-rw-r--r--. 1 root root 0 7月 31 19:48 file2任务2.1 管理文件与目录任务资讯cp 命令的基本用法如例 2.1.20 所示。例 2.1.20:cp 命令的基本用法[root@bogon ~]#cp file1 file3 //在当前目录将file1文件复制为file3文件[root@bogon ~]#cp -r test1 test3[root@bogon ~]#ls -l-rw-------. 1 root root 1519 7月 31 19:05 anaconda-ks.cfg-rw-r--r--. 1 root root 0 7月 31 19:44 file1-rw-r--r--. 1 root root 0 7月 31 19:44 file2-rw-r--r--. 1 root root 0 7月 31 19:48 file3-rw-r--r--. 1 root root 1567 7月 31 19:06 initial-setup-ks.cfgdrwxr-xr-x. 2 root root 32 7月 31 19:48 test1drwxr-xr-x. 3 root root 19 7月 31 19:47 test2drwxr-xr-x. 2 root root 32 7月 31 19:58 test3 //目标目录test3被创建任务2.1 管理文件与目录任务资讯[root@bogon ~]#ls -l test1 test3test1:-rw-r--r--. 1 root root 0 7月 31 19:48 file1-rw-r--r--. 1 root root 0 7月 31 19:48 file2test3:-rw-r--r--. 1 root root 0 7月 31 19:58 file1-rw-r--r--. 1 root root 0 7月 31 19:58 file2 //将源目录内容同时复制[root@bogon ~]#cp -r test1 test3[root@bogon ~]#ls -l test3总用量 0-rw-r--r--. 1 root root 0 7月 31 19:58 file1-rw-r--r--. 1 root root 0 7月 31 19:58 file2drwxr-xr-x. 2 root root 32 7月 31 20:03 test1任务2.1 管理文件与目录任务资讯(4)mv命令mv命令用于对文件或目录进行移动或改名,其基本语法如下。mv [选项] 源文件或源目录 目标文件或目标目录mv命令的常用选项及其功能如表2-1-12所示。任务2.1 管理文件与目录任务资讯该命令的选项解析如下。① 若目标文件和源文件同名,则源文件会覆盖目标文件。② 若使用-i 选项,则覆盖前会有提示。③ 若源文件和目标文件在相同目录下,则相当于对源文件重命名。④ 若源目录和目标目录都已存在,则源目录及其所有内容全部移动到目标目录下。任务2.1 管理文件与目录任务资讯mv 命令的基本用法如例 2.1.21 所示。例如 2.1.21:mv 命令的基本用法[root@bogon ~]#mv -i file1 test1 //将file1文件移动到test1目录下mv:是否覆盖"test1/file1"? y //使用-i选项,移动前覆盖会有提示[root@bogon ~]#mv file2 test2 //将file2文件移动到test2目录下[root@bogon ~]#mv file3 file4 //将file3文件重命名为file4[root@bogon ~]#ls -l-rw-------. 1 root root 1519 7月 31 19:05 anaconda-ks.cfg-rw-r--r--. 1 root root 0 7月 31 19:48 file4-rw-r--r--. 1 root root 1567 7月 31 19:06 initial-setup-ks.cfgdrwxr-xr-x. 2 root root 32 7月 31 22:26 test1drwxr-xr-x. 3 root root 32 7月 31 22:27 test2drwxr-xr-x. 3 root root 45 7月 31 20:03 test3任务2.1 管理文件与目录任务资讯mv 命令的基本用法如例 2.1.21 所示。例如 2.1.21:mv 命令的基本用法[root@bogon ~]#mv test1 test2 //将test1目录移到test2目录下[root@bogon ~]#ls -l test2-rw-r--r--. 1 root root 0 7月 31 19:44 file2drwxr-xr-x. 2 root root 6 7月 31 19:47 share任务2.1 管理文件与目录任务资讯(5)rmdir命令rmdir命令的作用是删除空目录。目录在删除前必须是空的,否则 rmdir 命令就会报错。用户在删除某目录时,需要具有对其父目录的写权限。rmdir命令的基本语法所示。rmdir 目录名rmdir 命令的常用选项及其功能见表 2-1-13。任务2.1 管理文件与目录任务资讯rmdir 命令的基本用法如例 2.1.22 所示。例 2.1.22:rmdir 命令的基本用法[root@bogon ~]#cd test2[root@bogon test2]#ls -l-rw-r--r--. 1 root root 0 7月 31 19:44 file2drwxr-xr-x. 2 root root 6 7月 31 19:47 sharedrwxr-xr-x. 2 root root 32 7月 31 22:26 test1[root@bogon test2]#rmdir share //share目录是空的[root@bogon test2]#rmdir test1 //test1目录下有文件rmdir: 删除 "test1" 失败: 目录非任务2.1 管理文件与目录任务资讯(6)rm命令rm命令用来永久性地删除文件或目录,其基本语法如下。rm [选项] 文件或目录rm命令的常用选项及其功能见表2-1-14。任务2.1 管理文件与目录任务资讯rm 命令的基本用法如例 2.1.23 所示。例 2.1.23:rm 命令的基本用法[root@bogon ~]#cd test3[root@bogon test3]#ls //查看当前目录下是否有file1、file2文件file1 file2 test1[root@bogon test3]#rm -i file1 //删除file1文件rm:是否删除普通空文件 "file1"?Y //使用-i选项时会有提示[root@bogon test3]#rm -f file2 //使用-f选项时没有提示[root@bogon test3]#lstest1任务2.1 管理文件与目录任务资讯rm 命令的基本用法如例 2.1.23 所示。例 2.1.23:rm 命令的基本用法[root@bogon test3]#rm test1rm: 无法删除"test1": 是一个目录 //rm命令不能直接删除目录[root@bogon test3]#rm -ir test1rm:是否进入目录"test1" y //每删除一个文件前都会有提示rm:是否删除普通空文件 "test1/file1"?yrm:是否删除普通空文件 "test1/file2"?yrm:是否删除目录 "test1"?y //删除目录自身也会有提示[root@bogon test3]#ls //查询是否删除成功[root@bogon test3]#任务2.1 管理文件与目录任务资讯9.重定向与管道命令Linux操作系统中,标准的输入设备默认指的是键盘,标准的输出设备默认指的是显示器。但是,Linux 操作系统提供了一种特殊的操作,可以改变命令的默认输入或输出目标,称为 I/O 重定向。I/O 重定向分为输入重定向、输出重定向和错误重定向。这里只介绍输入重定向和输出重定向。(1)输入重定向。有些命令需要用户从键盘来输入数据,但有些时候用户手动输入数据会非常麻烦,这时,可以使用重定向符“<”实现输入源的重定向。输入重定向是指把命令或可执行程序的标准输入重定向到指定的文件中,也就是说,从键盘输入的数据改为从文件读取。输入重定向的基本用法如例 2.1.24 所示。任务2.1 管理文件与目录任务资讯例 2.1.24:输入重定向的基本用法[root@bogon ~]#cat < /etc/filesystems //查看/etc/filesystems文件中的内容ext4ext3ext2nodev procnodev devptsiso9660vfathfshfsplus*任务2.1 管理文件与目录任务资讯(2)输出重定向输出重定向是指把一个命令的输出重定向到一个文件中,而不是显示在屏幕上,很多情况下都可以使用这种功能。例如,若某个命令输出的内容较多,在屏幕上不能完全显示时,则可以把它重定向到一个文件中,再用文本编辑器打开此文件。Linux 主要提供了两种重定向符实现输出重定向,分别是“>”和“>>”,这两个重定向符的区别在于目标文件已经存在的情况下,“>”会覆盖已有文件,而“>>”则会将新的内容追加到已有文件内容的后面,不清除原来的内容。输出重定向的基本用法如例 2.1.25 所示。任务2.1 管理文件与目录任务资讯例 2.1.25:输出重定向的基本用法[root@bogon ~]#lsanaconda-ks.cfg file4 initial-setup-ks.cfgls.result test2 test3[root@bogon ~]#pwd/root[root@bogon ~]#ls /root > dir //用/root目录下的文件覆盖dir文件[root@bogon ~]#cat dir //查看dir文件中的内容anaconda-ks.cfgfile4initial-setup-ks.cfgls.resulttest2test3任务2.1 管理文件与目录任务资讯例 2.1.25:输出重定向的基本用法[root@bogon ~]#ls /homeadmin[root@bogon ~]#ls /home >> dir //把/home目录下的文件追加到dir文件中[root@bogon ~]#cat dir //查看dir文件中的内容,admin已经被追加到dir文件中anaconda-ks.cfgfile4initial-setup-ks.cfgls.resultTest2test3admin任务2.1 管理文件与目录任务资讯(3)管道命令简单地说,通过管道命令可以让一个命令的输出成为另一个命令的输入。管道命令的基本语法如下所示。"命令1"|"命令2"管道命令的基本用法如例 2.1.26 所示。例2.1.26:管道命令的基本用法[root@bogon ~]#cat anaconda-ks.cfg |wc //wc把cat命令的输出作为输入62 143 1520任务2.1 管理文件与目录任务资讯10.其他常用命令(1)find命令find 是 Linux 中强大的搜索命令,不仅可以按照文件名、权限、大小、时间、inode 编号等来搜索文件,还可以在某一目录及其所有子目录下按照匹配表达式指定的条件来搜索文件。find 命令的基本语法如下所示。find [目录] [匹配表达式]其中,参数“目录”表示查找文件的起点,find会在这个目录及其所有子目录下按照匹配表达式指定的条件进行查找。任务2.1 管理文件与目录任务资讯find命令的常用选项及其功能见表2-1-15。任务2.1 管理文件与目录任务资讯find 命令的基本用法如例 2.1.27 所示。例 2.1.27:find 命令的基本用法[root@bogon ~]#find . -name "file4" //查找文件名为“file4”的文件./file4[root@bogon ~]#find . -size 3 //查找大小为3的文件./anaconda-ks.cfg[root@bogon ~]#find . -size +1k //查找大于1 K的文件./anaconda-ks.cfg./initial-setup-ks.cfg任务2.1 管理文件与目录任务资讯(2)grep命令grep命令是一种强大的文本搜索工具,可以从文件中提取符合指定匹配表达式的行,默认所有人都可以使用。grep命令的基本语法如下。grep [选项] 文件grep命令的常用选项及其功能如表2-1-16所示。任务2.1 管理文件与目录任务资讯grep 命令的基本用法如例 2.1.28 所示。例 2.1.28:grep 命令的基本用法[root@bogon ~]#grep swap /etc/fstab //提取内容为swap的行/dev/mapper/centos-swap swap swap defaults 0 0[root@bogon ~]#grep -n root /etc/fstab //提取包含root的行9:/dev/mapper/centos-root / xfs defaults 0 0任务2.1 管理文件与目录任务资讯(3)ln命令ln命令用于链接文件或目录。链接有两种,即前文说过的软链接文件和硬链接文件。软链接文件又叫符号链接文件,在对软链接文件进行读写操作时,系统会自动把该操作转换为对源文件的操作,但在删除软链接文件时,系统仅删除软链接文件,而不删除源文件,这种形式类似于Windows中的快捷方式。硬链接文件是两个文件名指向的是硬盘上的同一块存储空间,对任何一个文件的修改将影响到另一个文件;硬链接文件是已存在的另一个文件,在对硬链接文件进行读写和删除操作时,结果和软链接文件相同,但在删除硬链接文件的源文件时,硬链接文件依然存在,而且保留了原有的内容。ln命令的基本语法如下。ln [选项] 源文件或源目录 链接名称任务2.1 管理文件与目录任务资讯ln命令的常用选项及其功能如表2-1-17所示。ln 命令的基本用法如例 2.1.29 所示。例 2.1.29:ln 命令的基本用法[root@bogon ~]#ln -s file1 file2//对file1文件建立名为file2的软链接,若不加任何参数则默认建立的是硬链接任务2.1 管理文件与目录任务资讯(4)man命令Linux操作系统自带了数量十分庞大的命令,许多命令的使用又涉及复杂的选项和参数,我们不可能将所有命令的用法都记住。而man命令可以提供关于其他命令的准确、全面、详细。man命令的使用非常简单,只要在man后面加上所要查找的命令名即可,如2-1-2图所示man命令提供-的信息非常全面,包括命令的名称、描述、选项和参数的具体含义等,这些信息对于深入学习某个命令很有帮助。任务2.1 管理文件与目录任务资讯(5)shutdown命令shutdown命令用于以一种安全的方式关闭系统。所谓的“安全的方式”是指所有的登录用户都会收到关机提示信息,以便这些用户保存正在运行的工作。shutdown命令的基于语法如下。shutdown [选项] 时间 [关机提示信息]shutdown可以指定立即关机,也可以指定在特定的时间点或者延迟特定的时间关机。shutdown命令的常用选项及其功能如表2-1-18所示。任务2.1 管理文件与目录任务资讯其中,时间参数可以指定“hh:mm”格式的绝对时间,“hh”表示小时,“mm”表示分钟,“hh:mm”表示在特定的时间点关闭系统;也可以采用“+m”的格式,表示 m 分钟之后关闭系统。shutdown 命令的基本语法如例 2.1.30 所示。例 2.1.30:shutdown 命令的基本语法[root@bogon ~]#shutdown -h now //现在关闭系统[root@bogon ~]#shutdown -h 23:00 //在23:00关闭系统[root@bogon ~]##shutdown -r +15 //15分钟后重启系统任务2.1 管理文件与目录任务资讯(6)其他命令①history:显示过去执行过的命令②echo:显示一行文本。③clear:清空当前终端窗口。④date:显示或设置当前系统时间。⑤who:显示当前有哪些用户登录系统。⑥whoami:显示当前生效的系统登录用户。⑦whereis:查找一个命令对应的可执行文件、源文件和帮助文档的位置。⑧which:查找命令对应的可执行文件的完整路径。用户可借助man命令获得关于这些命令的更多信息。任务2.1 管理文件与目录任务实施(1)在根目录下建立/test、/test/etc、/test/exer/task1、/test/exer/task2 目录,并使用 tree 命令查看/test 目录的结构,实施命令如下所示。任务2.1 管理文件与目录任务实施(2)复制/etc/目录下所有以字母“a”“b”“c”开头的文件到/test/etc 目录下(包括子目录),将当前目录切换到/test/etc 目录,以相对路径的方式查看/test/etc 目录下的内容,实施命令如下所示。任务2.1 管理文件与目录任务实施(3)将当前目录切换到/test/exer/task1 目录,在当前目录下建立 file1.txt 和 file2.txt 空文件,并将file2.txt 文件更名为 file4.txt,使用相对路径的方式将/test/etc/bashrc 文件复制到/test/exer/task1/file3.txt 新文件,并查看当前目录下的文件,实施命令如下所示。任务2.1 管理文件与目录任务实施(4)以绝对路径的方式,直接删除/test/etc 目录下以“cron”开头的所有文件或子目录,移动/test/etc 目录下以“ch”开头的文件或子目录到/test/exer/task2 目录下,实施命令如下所示。任务2.1 管理文件与目录任务实施(5)查看/test/etc 目录下以“al”开头的文件的文件类型,实施命令如下所示。任务2.1 管理文件与目录任务实施(6)将当前目录切换到/test/exer/task1 目录,使用相对路径的方式为 file1.txt 文件建立硬链接,链接文件为 file5.txt 文件,为 file3 文件建立软链接,链接文件为 file6.txt 文件,链接文件存放于/test/exer/task2 目录下,查看两个目录下的文件列表,实施命令如下所示。任务2.1 管理文件与目录任务实施(7)使用 echo 命令建立/var/info1 文件,文件内容如下所示。BananaOrangeApple实施命令如下所示。任务2.1 管理文件与目录任务实施(8)统计/etc/sysctl.conf 文件中的字节数、单词数、行数,并将统计结果存放在/var/info2文件中,实施命令如下所示。(9)使用命令查看/var/info1 文件前两行的内容,并将输出结果存放在/var/info3 文件中,实施命令如下所示。任务2.1 管理文件与目录任务实施(10)使用命令查找/etc 目录下名以“c”开头、以“conf”结尾、大于 5 KB 的文件,并将查询结果存放在/var/info4 文件中,实施命令如下所示。(11)使用命令查看/var/info1 文件后两行的内容,并将输出结果存放在/var/info5 文件中,实施命令如下所示。任务2.1 管理文件与目录任务实施(12)使用命令输出/var/info1 文件中不包括“pp”字符串的行,并输出行号,将输出结果存放在/var/info6 文件中,实施命令如下所示。任务2.1 管理文件与目录任务小结(1)Linux系统使用树形目录结构管理,需掌握每个目录的作用,否则容易误操作。(2)Linux系统的基本运维命令不多,需熟练掌握。任务2.1 管理文件与目录 展开更多...... 收起↑ 资源预览