Linux复制文件* Linux是一种基于UNIX标准的现代自由操作系统。在过去的二十年中,它在不同的平台上以多种方式采用,因此有许多口味。虽然穿过他们,它保持了其强大的本质,作为一个可靠的运行系统。

在本教程中,我们将带领您完成在Linux中复制文件的各种方式。是的,有很多选择。但是他们很简单地学习和足够强大,因为你想要用它们。

如果您是Linux的新手,我们强烈推荐您首先在Linux上进行简单,有效的崩溃课程。这将有助于您了解我们将在教程中使用的基本框架和概念的感受。

让我们从基础开始。

如何在Linux中创建文件

在Linux中创建文件时,会同时存储一些不同类型的信息。这些参数包括用户名、文件类型、创建时间、访问权限等等。您需要知道两个属性——inode编号和文件名。inode号表示存储在文件中的数据在硬盘分区中的实际位置。文件名实际上是指向inode号的人类可读的指针,并且是指向inode号的链接。文件名是在用户指定的目录结构中创建的。

简单复制:复制到一个不同的名字,在同一个文件夹

Linux中的拷贝命令,被亲切地缩写为“cp”。它是Linux的基本实用程序之一,是每个Linux变种的一部分。它的工作是创建您指定的任何文件系统元素的副本。它可以复制文本文件或可执行程序(二进制)文件,甚至整个目录。它可以用于生成备份文件或创建备份副本,以备您想要试验该文件。

以下是副本命令的一般语法 -

> cp [-options]源目标

我们假设源文件名是source.txt,目标文件名是target.txt。

所以上面的命令变成

cp source.txt target.txt

这将通过名为“target”的名称在同一位置中创建源文件副本。

要验证此功能,您可以尝试“ls”命令,向您展示目录的内容

> ls source.txt target.txt

从一个目录复制到另一个目录

现在让我们说要将文件从一个位置复制到另一个位置,具有相同的名称。然后语法将是 -

> cp dir1 / source.txt dir2 / source.txt

在这里,我们将source.txt复制来自dir1 / to dir2 /。或者,您需要一点快捷方式和使用

> cp dir1/source.txt dir2/。

Linux会解释'。的意思是“使用相同的文件名”。

要确认,请再次使用“LS”命令。

> ls dir2 / source.txt

以交互模式复制文件

有时,您可以在不同文件夹中常用文件名,而不记得它。例如,您可以在多个文件夹中调用Readme.txt的文件。您将其命名为此,以便遵循该文件夹,首先读取,以获取指令。现在随着时间的推移,您可能不记得哪些文件夹专门拥有它,并且没有。你如何确保在复制时不覆盖它?通过每个文件夹来查找它,可能是非常痛苦的。Linux有一个简单的方法 - 它可以提示您。尝试以下命令

> CP -I README.TXT DIR2 /。

这样,如果dir2 /已经有一个readme.txt,Linux会提示您提出一个问题“您要复制或不复制'。您可以从键盘上提供简单的“Y”或“N”选项

强制副本

有时会发生不允许将文件从源复制到目标的情况。这可能是由于安全原因或权限,也可能是因为文件已经存在于目标位置上。与交互模式复制相比,这是完全相反的场景。

在这种情况下,我们可以利用CP命令的-f选项,也称为“Force Copy”。语法将是 -

> CP -F Readme.txt Dir2 /。

此选项首先删除该文件并创建具有相同名称的新文件,而不会提示无论其权限如何。

条件副本

如果您已经安排了后台脚本的运行,或者多个用户访问同一个文件系统,Linux有一个相当漂亮的选项“-u”,它只在两种情况下复制文件。

一种。源代码的文件比目标更新。

b.文件在目标位置丢失。

语法是一个简单的

> CP -U README.TXT DIR2 /。

复制多个文件

让你有多个文件(源文件。txt, source1。source .txt, source2.txt等等,直到sourcen2 .txt),你想复制其中的一些。您可以手动键入要复制的文件的名称,也可以使用通配符。让我们看看如何。

如果要选择性地复制少数文件,最好按名称列出所有文件

> cp source1.txt source2.txt dir2 /。

注意使用“。”。这可确保我们将文件复制到具有相同名称的新目录。再次,让我们检查这是否实际上是工作的。记住'ls'命令?

source1.txt source2.txt

如果您有多少数文件,则键入所有名称可能是非常痛苦的。一如既往,Linux有一种方便的方式来做。Linux允许您使用通配符来指定文件名。让我们看看如何。

cp source*.txt dir2/。

这是告诉Linux复制source1,source2 ... sourcen,即从'source'over到dir2 /开头的所有文件。让我们看看另一个命令

readme.txt dir2/。

你能猜到它的作用吗?是的,它复制所有的“源”文件和readme.txt。让我们更进一步。如何将所有文件复制到一个新文件夹?在看答案之前自己试一下。

> cp * dir2 /。

就像我们一开始提到的,Linux是一个非常强大的操作系统。它给用户一个非常粒度的粒度来完成完成。我们希望本教程帮助您了解基本拷贝功能,并显示您如何掌握Linux命令行

Linux的顶级课程

Linux为初学者到中间
4.3 (60)
精通Linux:在11.5小时内掌握Linux命令行
Ziyad Yehia,物联网学院
4.7 (12,837)
畅销书
完整的Linux安全和实际例子的硬化
伊姆兰·阿夫扎尔(24万+学生)
4.7 (408)
5天学习Linux,提升你的职业生涯
杰森大炮
4.5 (26,912)
完整的Linux培训课程让您的梦想工作2021
伊姆兰·阿夫扎尔(24万+学生)
4.6 (9672)
畅销书
Linux管理和故障排除技巧-动手
全球30,000多名学生
4.5 (2,375)
Linux管理:完整的Linux训练营2021
andrei dumitrescu,水晶思维学院
4.6 (265)
畅销书
Linux云和Devops工程师
瓦萨比技术|ar shankar.
4.4 (570)
Asterisk变得简单:学习安装Asterisk和Linux
乔恩·曼宁
4.7 (854)
评价最高
学习Linux管理和Linux命令行技能
卡希夫阿里
4.5 (405)
Linux诊断与故障处理
全球30,000多名学生
4.4 (307)
Linux为初学者
Bogdan Stashchuk
4.8 (249)
畅销书

更多的Linux课程

Linux学生还学习

让你的团队。领导行业。

通过Udemy为Business获取组织的在线课程和数字学习工具库的订阅。

请求一个演示