1.实验目的与要求
- 掌握文件和目录管理的相关操作
- 掌握文件及文件夹其他操作
2.实验平台
实验室安装的实验环境(Linux操作系统)和头歌(www.educoder.net)实验平台(课程实验)
3.实验内容
- linux下文件和目录的管理等操作(结合编程模式)
- 文件及文件夹其他操作,如拷贝、移动、链接、压缩、打包等
4.实验详细内容、步骤
任务描述
本关主要讲解在 Linux 命令行下如何对文件进行创建和删除操作。
本关任务:创建一个新的文件,同时将一个已经存在的文件删除。
相关知识
Linux 几乎大多数工作都可以在命令行下完成,除非要运行图形化工具。 Linux bash shell 提供了许多命令,例如:在命令行下可以轻松的完成文件的创建和删除。
本关将介绍如何在 Linux 命令行下创建文件和删除文件。
Linux创建文件
Linux 中使用touch
命令来创建一个空文件。
具体命令如下:touch 文件名
具体说明:
- 如果一次想创建多个文件,则每个文件名用空格隔开;
touch
命令创建一个指定的新文件,并将当前登录用户作为文件所有者;- 由于
touch
命令创建的文件为空,所以文件的大小为 0 ; touch
命令还可以用于更改文件的访问时间和修改时间,而不改变文件的内容;
Linux删除文件
Linux 中使用rm
命令来删除一个已经存在的文件。
具体命令如下:rm 参数 文件名
常用参数如下:
-f
:强制删除文件或目录;-i
:删除已有文件或目录之前先询问用户;-r
或-R
:递归处理,将指定目录下的所有文件与子目录一并处理;-i
:删除已有文件或目录之前先询问用户。
具体说明:
- 如果一次想删除多个文件,则每个文件名用空格隔开;
rm
命令可以使用通配符来删除文件。
编程要求
本关的编程任务是补全右侧代码片段中 Begin 至 End 中间的代码,具体要求如下:
- 新创建两个文件空文件
file1
和file2
; - 删除系统已存在的两个文件
oldFile1
和oldFile2
;
任务描述
本关主要讲解在 Linux 命令行下如何对目录进行创建和删除操作。
本关任务:创建一个新的空目录,同时将一个已经存在的目录删除。
相关知识
本关将介绍如何在 Linux 命令行下创建目录和删除目录。
Linux创建目录
Linux 中使用mkdir
命令来创建一个空目录。
具体命令如下:mkdir 参数 目录名
常用参数如下:
-p或--parents
:若所要建立目录的上层目录目前尚未建立,则会一并建立上层目录。
具体说明:
- 如果一次想创建多个目录,则每个目录名用空格隔开;
mkdir
命令创建一个指定的目录,并将当前登录用户作为目录所有者;mkdir
命令创建一个空目录后,该目录下只存在两个特殊的目录,分别是.
和..
。
Linux删除目录
Linux 中使用rmdir
命令来删除一个已经存在的空目录。
具体命令如下:rmdir 参数 目录名
常用参数如下:
-p或--parents
:删除指定目录后,若该目录的上层目录已变成空目录,则将其一并删除;
具体说明:
- 如果一次想删除多个空目录,则每个目录名用空格隔开;
rmdir
命令可以使用通配符来删除目录。
如果想删除的目录不为空,则先使用rm
命令将目录下的所有文件都清空,然后再使用rmdir
将目录删除,或者直接使用rm -r
命令直接递归的删除整个目录。
任务描述
本关主要讲解在 Linux 命令行下如何对文件进行拷贝和重命名操作。
本关任务:将一个指定文件拷贝到指定的目录下,同时对一个已存在的文件重命名。
相关知识
本关将介绍如何在 Linux 命令行下对文件拷贝和重命名。
Linux拷贝文件
Linux 中使用cp
命令将一个或多个源文件复制到指定的目的目录下。它可以将单个源文件复制成一个指定文件名的具体的文件或一个已经存在的目录下。
具体命令如下:cp 参数 源文件 目的目录
常用参数如下:
-f
:强行复制文件或目录,不论目标文件或目录是否已存在;-i
:覆盖既有文件之前先询问用户;-p
:保留源文件或目录的属性。
具体说明:
cp
命令支持同时复制多个文件,当一次复制多个文件时,目的目录参数必须是一个已经存在的目录,否则将出现错误;cp
命令支持同时复制多个文件,当一次复制多个文件时,多个文件用空格分隔。
Linux重命名文件
Linux 中使用mv
命令来重命名一个文件名。
mv
命令还可以用来移动文件,类似于Windows
上的剪切功能。
具体命令如下:mv 参数 目录名
常用参数如下:
-f
:若目标文件与现有的文件重复,则直接覆盖现有的文件;-i
:交互式操作,覆盖前先行询问用户,如果源文件与目标文件或目标目录中的文件同名,则询问用户是否覆盖目标文件。用户输入”y”,表示将覆盖目标文件;输入”n”,表示取消对源文件的移动。这样可以避免误将文件覆盖。
具体说明:
- 如果一次想移动多个文件,则每个文件名用空格隔开;
mv
命令可以使用通配符来移动目录。
编程要求
本关的编程任务是补全右侧代码片段中 Begin 至 End 中间的代码,具体要求如下:
- 将当前目录下的文件
file1
和file2
拷贝到目录Dir
下; - 将当前目录下的文件
file1
拷贝到目录Dir
下并重命名为file1Cpy
; - 将当前目录下的文件
file3
和file4
移动到目录Dir
下; - 将当前目录下的文件
file5
重命名为file6
。
任务描述
本关主要讲解在 Linux 命令行下如何对目录进行拷贝和重命名操作。
本关任务:将一个指定目录拷贝到指定的目录下,同时对一个已存在的目录重命名。
相关知识
本关将介绍如何在 Linux 命令行下对目录拷贝和重命名。
Linux拷贝目录
Linux 中使用cp -r
命令将一个或多个源目录复制到指定的目录下。它可以将单个源目录复制成一个指定目录名的具体的目录或一个已经存在的目录下。
具体命令如下:cp 参数 源目录 目的目录
常用参数如下:
-r
是递归把源目录下的目录递归进行移动;-f
:强行复制文件或目录,不论目标文件或目录是否已存在;-i
:覆盖既有文件之前先询问用户;-p
:保留源文件或目录的属性;
具体说明:
cp
命令支持同时复制多个目录,当一次复制多个目录时,目的目录参数必须是一个已经存在的目录,否则将出现错误;cp
命令支持同时复制多个目录,当一次复制多个目录时,多个目录名用空格分隔;cp
命令拷贝目录和拷贝文件大致用法相似,最大差别就是拷贝目录的时候必须加上-r
参数,而拷贝文件的时候不需要加-r
参数。
Linux重命名目录
Linux 中使用mv
命令来重命名一个目录名。
mv
命令还可以用来移动目录,类似于Windows
上的剪切功能。
具体命令如下:mv 参数 源目录 目的目录
常用参数如下:
-f
:若目标目录与现有的目录重复,则直接合并现有的目录;-i
:交互式操作,覆盖前先行询问用户,如果源目录与目标目录同名,则询问用户是否合并目标目录。用户输入”y”,表示将合并目标目录;输入”n”,表示取消对源目录的移动。这样可以避免误将目录覆盖。
具体说明:
- 如果一次想移动多个目录,则每个目录名用空格隔开;
mv
命令可以使用通配符来移动目录;mv
命令移动目录和移动文件的使用大致一样,唯一不同的是如果出现源目录和目标目录重名,则采用合并的方式,而对于文件则是直接覆盖。
编程要求
本关的编程任务是补全右侧代码片段中 Begin 至 End 中间的代码,具体要求如下:
- 将当前目录下的目录
Dir1
和Dir2
拷贝到目录Dir
下; - 将当前目录下的目录
Dir1
拷贝到目录Dir
下并重命名为Dir1Cpy
; - 将当前目录下的目录
Dir3
和Dir4
移动到目录Dir
下; - 将当前目录下的目录
Dir5
重命名为Dir6
。
任务描述
本关主要讲解在 Linux 命令行下如何查看文件内容和目录下内容。
本关任务:查看一个文件的内容和列出一个目录下的所有内容。
相关知识
Linux查看文件内容
Linux 中查看文件内容的命令有很多,接下来我们介绍常用的几个命令。
cat命令
具体命令如下:cat 参数 文件名
常用参数如下:
-n 或 --number
:由1
开始对所有输出的行数编号;
- -b
或 --number-nonblank
:和-n
相似,只不过对于空白行不编号。
具体说明:
cat
命令支持同时查看多个文件,当一次查看多个文件时,每个文件的内容都会被打印到屏幕上;cat
命令不能对文件进行编辑操作,只能查看文件内容。
Linux查看目录内容
Linux 中使用ls
命令来查看一个目录下的内容。
具体命令如下:ls 参数 目录
常用参数如下:
-a
:显示所有档案及目录(ls
内定将档案名或目录名称为“.”的视为影藏,不会列出);-A
:显示除影藏文件“.”和“..”以外的所有文件列表;-l
:列出内容的详细信息;-r
:以文件名反序排列并输出目录内容列表;-s
:显示文件和目录的大小,以区块为单位;-i
:显示文件索引节点号(inode
)。一个索引节点代表一个文件;-R
:递归处理,将指定目录下的所有文件及子目录一并处理。
具体说明:
- 如果一次查看多个目录,则每个目录名用空格隔开。
编程要求
本关的编程任务是补全右侧代码片段中 Begin 至 End 中间的代码,具体要求如下:
- 查看当前目录下的文件
file1
的所有内容; - 查看当前目录下的文件
file2
的头5行内容; - 查看当前目录下的文件
file2
的末尾5行内容; - 查看目录
/home
目录下的所有内容(包括隐藏内容)。