介绍
本指南将向您展示如何使用最流行的图形文件管理器以及使用Linux命令行将文件和文件夹从一个地方复制到另一个地方。
大多数人习惯使用图形工具从磁盘复制文件。 如果您习惯使用Windows,那么您将会注意到一个称为Windows资源管理器的工具,它非常容易。
Windows资源管理器是一种称为文件管理器的工具,Linux有许多不同的文件管理器。 在你的系统上出现的那个在很大程度上取决于你正在使用的Linux版本以及在某种程度上你正在使用的桌面环境 。
最常见的文件管理器如下所示:
- 鹦鹉螺(又名文件)
- 海豚
- Thunar中
- PCManFM
- 卡哈
如果您正在运行Ubuntu , Linux Mint , Zorin , Fedora或openSUSE,那么您的文件管理器很可能被称为Nautilus。
任何使用KDE桌面环境运行发行版的人都可能会发现Dolphin是默认的文件管理器。 使用KDE的发行版包括Linux Mint KDE,Kubuntu,Korora和KaOS。
Thunar文件管理器是XFCE桌面环境的一部分,PCManFM是LXDE桌面环境的一部分,Caja是MATE桌面环境的一部分。
如何使用Nautilus复制文件和文件夹
Nautilus将通过Linux Mint和Zorin中的菜单提供,或者它将显示在Ubuntu的Unity Launcher中,或者通过任何使用GNOME的分发版(例如Fedora或openSUSE)的仪表板视图显示。
通过双击文件夹来复制文件在文件系统中导航,直到找到想要复制的文件。
您可以使用标准键盘命令来复制文件。 例如,单击一个文件并一起按CTRL和C需要一个文件的副本。 按CTRL和V将文件粘贴到您选择将文件复制到的位置。
如果将一个文件粘贴到同一个文件夹中,则它将与原始文件具有相同的名称,除了它将在其末尾具有单词(复制)。
您也可以通过右键单击文件并选择“复制”菜单项来复制文件。 然后,您可以选择您想要粘贴的文件夹,右键单击并选择“粘贴”。
复制文件的另一种方法是右键单击该文件并选择“复制到”选项。 将出现一个新窗口。 找到您要将文件复制到的文件夹,然后单击“选择”按钮。
按住CTRL键的同时选择每个文件,可以复制多个文件。 任何以前的方法,例如选择CTRL C或从上下文菜单中选择“复制”或“复制到”都适用于所有选定的文件。
复制命令适用于文件和文件夹。
如何使用Dolphin复制文件和文件夹
海豚可以通过KDE菜单启动。
Dolphin中的许多功能与Nautilus相同。
要复制文件,请双击文件夹,导航到文件所在的文件夹,直到看到文件。
使用鼠标左键选择文件或使用CTRL键和鼠标左键选择多个文件。
您可以一起使用CTRL和C键来复制文件。 要粘贴文件,请选择要将文件粘贴到的文件夹,然后按CTRL和V.
如果您选择粘贴与您复制的文件相同的文件夹,则会出现一个窗口,要求您输入复制文件的新名称。
您也可以通过右键单击文件并选择“复制”来复制文件。 要粘贴文件,您可以右键单击并选择“粘贴”。
也可以通过将文件从一个文件夹拖到另一个文件夹来复制文件。 当你这样做时,将出现一个菜单,其中有复制文件,链接文件或移动文件的选项。
如何使用Thunar复制文件和文件夹
Thunar文件管理器可以从XFCE桌面环境的菜单中启动。
与Nautilus和Dolphin一样,您可以使用鼠标选择文件并使用CTRL和C键来复制文件。 然后可以使用CTRL和V键粘贴文件。
如果您将该文件粘贴到与原始文件相同的文件夹中,则复制的文件保持相同的名称,但将“(副本)”作为其名称的一部分添加到Nautilus中。
您也可以通过右键单击文件并选择“复制”选项来复制文件。 请注意,Thunar不包含“复制到”选项。
一旦你复制了一个文件,你可以通过导航到要粘贴的文件夹来粘贴它。 现在只需右键单击并选择“粘贴”。
将文件拖动到文件夹会移动文件而不是复制文件。
如何使用PCManFM来复制文件和文件夹
PCManFM文件管理器可以从LXDE桌面环境的菜单中启动。
这个文件管理器相当于Thunar的基础。
您可以通过用鼠标选择文件来复制文件。 要复制文件,请同时按下CTRL和C键,或右键单击文件并从菜单中选择“复制”。
要粘贴文件,请在要将文件复制到的文件夹中按CTRL和V. 您也可以右键单击并从菜单中选择“粘贴”。
拖放文件不会复制文件,它会移动文件。
右击一个名为“复制路径”的文件时有一个选项。 如果您想要将文件的URL以任何理由粘贴到文档或命令行中,这很有用。
如何使用Caja复制文件和文件夹
您可以从MATE桌面环境中的菜单启动Caja。
Caja和Nautilus很像,工作原理也很相似。
要复制文件,请通过浏览文件夹来找到它。 点击文件,然后选择CTRL和C来复制文件。 您也可以右键单击并从菜单中选择“复制”。
要粘贴文件,请导航到要将文件复制到的位置,然后按CTRL和V.或者右键单击并从菜单中选择“粘贴”。
如果您粘贴到与原始文件相同的文件夹中,则该文件将具有相同的名称,但会在其末尾附加“(副本)”。
右键单击文件也会提供一个名为“复制到”的选项。 这不如Nautilus中的“复制到”选项有用。 您只能选择复制到桌面或主文件夹。
按住文件上的shift键并将其拖动到文件夹将显示一个菜单,询问您是否要复制,移动或链接文件。
如何将文件从一个目录复制到另一个使用Linux
将文件从位置复制到另一个位置的语法如下所示:
cp / source / path / name / target / path / name
例如,假设您有以下文件夹结构:
- 家
- 加里
- 文件
- 文件夹1
- 文件1
- 文件2
- 文件3
- 文件夹2
- 文件4
- 文件夹1
- 文件
- 加里
如果要将file1从其在/ home / documents / folder1中的当前位置复制到/ home / documents / folder2,则可以在命令行中键入以下内容:
cp / home / gary / documents / folder1 / file1 / home / gary / documents / folder2 / file1
你可以在这里做一些捷径。
/ home部分可以替换为本文中介绍的波浪号(〜)。 这改变了这个命令
cp〜/ documents / folder1 / file1〜/ documents / folder2 / file1
如果您打算使用相同的文件名,则可以简单地省略目标文件名
cp〜/ documents / folder1 / file1〜/ documents / folder2
如果您已经在目标文件夹中,则可以简单地使用句号替换目标的路径。
cp〜/ documents / folder1 / file1。
或者,如果您已经在源文件夹中,则可以简单地将文件名称作为源提供,如下所示:
cp file1〜/ documents / folder2
如何在Linux中复制文件之前进行备份
在上一节中,folder1包含一个名为file1的文件,而folder2不包含该文件。 想象一下,然而,folder2确实有一个名为file1的文件,并且您运行了以下命令:
cp file1〜/ documents / folder2
上述命令将覆盖当前位于文件夹2中的file1。没有提示,没有警告和错误,因为就Linux而言,您已指定了有效的命令。
您可以在复制文件时采取预防措施,让Linux在覆盖文件之前创建文件的备份。 只需使用以下命令:
cp -b / source / file / target / file
例如:
cp -b〜/ documents / folder1 / file1〜/ documents / folder2 / file1
在目标文件夹中,现在将会有已被复制的文件,并且最后还会有一个带有波形符号(〜)的文件,该文件基本上是原始文件的备份。
您可以更改备份命令以稍微不同的方式工作,以便创建编号的备份。 如果您之前已经复制了文件并且怀疑备份已存在,则可能需要执行此操作。 这是一种版本控制。
cp --backup =编号〜/ documents / folder1 / file1〜/ documents / folder2 / file1
备份的文件名将沿着file1。〜1〜,file1。〜2〜等行。
如何在使用Linux复制文件时覆盖文件之前提示
如果您不想让文件的备份副本位于您的文件系统周围,但您也希望确保副本命令不会无差别地覆盖文件,则可以显示提示,询问您是否要覆盖目标。
为此,请使用以下语法:
cp -i / source / file / target / file
例如:
cp -i〜/ documents / folder1 / file1〜/ documents / folder2 / file1
一条消息将如下所示: cp:覆盖'./file1'?
要覆盖文件,请按键盘上的Y或取消同时按N或CTRL和C.
在Linux中复制符号链接时会发生什么?
符号链接有点像桌面快捷方式。 符号链接的内容是物理文件的地址。
想象一下,因此你有以下文件夹结构:
- 家
- 加里
- 文件
- 文件夹1
- 文件1
- 文件夹2
- file1(符号链接指向folder1 / file1)
- folder3
- 文件夹1
- 文件
- 加里
看看下面的命令:
cp〜/ documents / folder1 / file1〜/ documents / folder3 / file1
这应该不是什么新东西,因为它将一个物理文件从一个文件夹复制到另一个文件夹。
但是,如果您将符号链接从folder2复制到folder3,会发生什么情况?
cp〜/ documents / folder2 / file1〜/ documents / folder3 / file1
复制到folder3的文件不是符号链接。 它实际上是由符号链接指向的文件,所以实际上您可以通过从folder1复制file1获得相同的结果。
顺便提一句,您可以使用以下命令获得相同的结果:
cp -H〜/ documents / folder2 / file1〜/ documents / folder3 / file1
只要确保有一个开关绝对强制文件被复制,而不是符号链接:
cp -L〜/ documents / folder2 / file1〜/ documents / folder3 / file1
如果您想复制符号链接,则需要指定以下命令:
cp -d〜/ documents / folder2 / file1〜/ documents / folder3 / file1
要强制复制符号链接而不是物理文件,请使用以下命令:
cp -P〜/ documents / folder2 / file1〜documents / folder3 / file1
如何使用cp命令创建硬链接
符号链接和硬链接有什么区别?
符号链接是物理文件的快捷方式。 它不包含比物理文件更多的地址。
然而,硬链接基本上是指向相同物理文件的链接,但具有不同的名称。 这几乎就像一个绰号。 这是组织文件的好方法,不占用任何更多的磁盘空间。
您可以使用cp命令创建一个硬链接,但是我通常会主张使用ln命令。
cp -l〜/ source / file〜/ target / file
作为一个例子,为什么你可能会使用硬链接考虑你有一个名为视频的文件夹,并在该视频文件夹中有一个非常大的视频文件,名为honeymoon_video.mp4。 现在想象你也想让这段视频被称为barbados_video.mp4,因为它还有巴巴多斯的片段,这是你去蜜月的地方。
您可以简单地复制该文件并为其指定新名称,但这意味着您占用两倍的磁盘空间用于实质上相同的视频。
您可以改为创建一个名为barbados_video.mp4的符号链接,它指向honeymoon_video.mp4文件。 这样可以很好地工作,但是如果有人删除了honeymoon_video.mp4,你将会留下一个链接而没有其他任何东西,链接仍然占用磁盘空间。
如果您创建了一个硬链接,但是您将拥有一个包含两个文件名的文件。 唯一的区别是它们包含不同的inode编号。 (唯一标识符)。 删除honeymoon_video.mp4文件不会删除该文件,只会将该文件的计数降低1.该文件只有在删除了该文件的所有链接时才会被删除。
要创建链接,你可以这样做:
cp -l /videos/honeymoon_video.mp4 /videos/barbados_video.mp4
如何使用cp命令创建符号链接
如果你想创建一个符号链接而不是硬链接,你可以使用下面的命令:
cp -s / source / file / target / file
我再次亲自一般使用ln -s命令,但是这也适用。
如何只复制文件,如果它们较新
如果您想将文件复制到文件夹,但只覆盖源文件较新的目标文件,则可以使用以下命令:
cp -u / source / file / target / file
值得注意的是,如果文件不存在于目标端,则复制将发生。
如何复制多个文件
您可以在复制命令中提供多个源文件,如下所示:
cp / source / file1 / source / file2 / source / file3 / target
上述命令会将file1,file2和file3复制到目标文件夹。
如果文件匹配某种模式,那么你也可以使用通配符,如下所示:
cp /home/gary/music/*.mp3 / home / gary / music2
上述命令会将所有带扩展名.mp3的文件复制到文件夹music2。
如何复制文件夹
复制文件夹与复制文件相同。
例如,假设您有以下文件夹结构:
- 家
- 加里
- 文件
- 文件夹1
- 文件1
- 文件2
- 文件夹2
- 文件夹1
- 文件
- 加里
假设您想要移动folder1文件夹,以便它现在位于文件夹2下,如下所示:
- 家
- 加里
- 文件
- 文件夹2
- 文件夹1
- 文件1
- 文件2
- 文件夹1
- 文件夹2
- 文件
- 加里
您可以使用以下命令:
cp -r / home / gary / documents / folder1 / home / gary / documents / folder2
您也可以使用以下命令:
cp -R / home / gary / documents / folder1 / home / gary / documents / folder2
这将复制folder1的内容以及子目录内的任何子目录和文件。
概要
本指南提供了在Linux中复制文件所需的大部分工具。 对于其他任何你可以使用Linux man命令 。
man cp