Menu Close

Linux 文件操作命令

此文章介绍了 Linux 中的不同文件系统的结构。

相关参考文章:SOC 教学教案

 

创建新文件命令 touch

与我们刚讲的 VIM 相比,touch 是一个更全面的指令。命令格式如下:

touch [选项] [文件名]

当我们使用 touch 创建新文件时,如果指定的文件名不存在,它将直接创建一个新文件并将其命名为指定的文件名;如果文件名存在,它将直接更改文件的修改日期。

最通用的选项如下:

-a                                    只更改最后修改日期。

-c                                    不创建任何文件。

-d<日期>                      使用指定的日期而并非实际日期。

-t<时间>                         使用指定的时间而并非实际时间。

在用户的根目录下的时候,可以直接使用命令 “cd ~” 快速访问用户的根目录。我们可以随之使用 touch 命令直接创建一个名为 “test” 的文件。

%title插图%num

我们可以看到 touch test 创建了文件,然后 ls test 使我们能够访问我们创建的文件。最后,ls test -l 使我们能够查看刚创建的文件的属性。

 

文件夹创建命令 mkdir

命令格式如下:

mkdir [选项] [文件夹名   目录]

其中最常用的选项是

-p                    如果指定目录的上层目录还没有被创建,将自动创建不存在的上层目录。

作为示范,我们将在用户的根目录下创建两个文件夹。为了方便,我们将把文件夹命名为 testfolder1 以及 testfolder2

%title插图%num

使用 ls 命令使我们能够看到两个文件夹顺利被创建了。

 

文件及目录删除命令 rm 

使用 rm 命令可以一下删除多个文件。它也能够递归删除一整个目录。删除链接文件的时候,例如各种快捷,它只会把链接文件删除,并不会删除原文件。命令格式如下:

rm [选项] [要删除的文件的目录]

最通用的选项如下:

-d        直接把药删除的目录的硬链接数据删为 0,随之删除整个目录。

-f        强制删除文件以及文件夹。

-i        在删除文件或文件夹前先问用户。

-r        递归删除指定目录下的所有文件和文件夹。

-v        显示删除的过程。

作为示范,我们将删除我们刚用 touch 创建的 test 文件。

%title插图%num

我们先用 ls 显示所有的文件。

接着我们使用 rm test 删除test文件。

最后,我们再次使用 ls 验证 test 文件被删除了。

我们接着演示删除文件夹 testfolder1

您会发现直接用 rm 命令无法将其删除。

切记需要使用选项 r 以及 f 才能将其删除。我们可以将它合并为一,写成 -rf

%title插图%num

 

删除文件夹目录命令rmdir

我们刚才使用了 -rf 选项删除 testfolder1

Linux 自身提供一个命令直接删除一个文件夹目录。命令格式如下:

rmdir [选项] [文件夹目录]

其中主要的选项是:

-p        删除指定的文件夹目录。如果上层文件夹是空的,将其也删除。

接下来我们用 rmdir 删除创建的 testfolder2,如下所示。

%title插图%num

 

文件复制命令cp

命令格式如下:

cp [选项] [源目录] [目标目录]

最通用的选项如下:

-a                                -dpR 选项的快捷。

-d                                复制有链接的文件时,保留原始的链接。

-f                                强制复制文件。不管要复制的文件是否已经存在在目标目录。

-I                                如果要覆盖文件,先问用户。

-p                                保留原文件或目录的属性。

-r-R          递归处理,将指定目录下的文件以及子目录一起处理。

我们先使用 mkdir 命令创建两个文件夹。为了方便,我们将命名他们为 test1 以及 test2

%title插图%num

接下来我们将进入我们刚创建的 test1 文件夹,并创建一个名为 a.c 的文件。我们接着使用 ls 命令检查看是否成功。

%title插图%num

我们接着要把文件复制到 test1 文件夹,并给复制的文件命名为 b.c

%title插图%num

接下来,我们将把 a.c 和 b.c 都复制到 test2 文件夹。将文件名的前面替换为 “*”,如 “*.c”,可以让我们选择所有以 “.c” 结尾的文件。

%title插图%num

注意我们使用了 “../” 把我们带到上层目录,也就是两个文件夹的目录。因为我们起初在 test1 文件夹里。

我们现在要把 test2 文件夹的所有内容复制到一个名为 test3 的新文件夹里。

%title插图%num

 

文件移动命令 mv

有时我们可能需要把一个文件从一个目录移到另一个,或我们想重新命名一个文件。因此我们可以使用 mv 命令。命令格式如下:

mv [选项] [原始目录] [指定目录]

最通用的选项如下:

-b        如果会有文件被覆盖,先备份该文件。

-f        如果指定目录与现在的文件重复,直接覆盖文件。

-I        在覆盖任何东西之前先问用户。

作为示范,我们将先在 test1 文件夹里创建一个名为 “c.c” 的文件,然后将其重新命名为 “d.c”。

%title插图%num

接下来我们将把 “d.c” 移入 test2 文件夹。

%title插图%num

Posted in 教材与教案

发表评论

相关链接