Linux cp命令教程(8个例子)

如果您是Linux的新手,值得一提的是,该命令行是一个非常强大的工具,能够通过图形界面完成几乎所有可以执行的任务。 但是,通常情况下,您会发现自己在命令行上执行简单的任务。 一个这样简单的任务是复制文件/目录。

Linux cp命令提供了通过命令行复制文件和目录的权力。 在本教程中,我们将使用易于理解的示例来讨论此工具的基本用法。 但在我们这样做之前,值得分享的是,本文中提到的所有示例/指令都已在Ubuntu 16.04LTS上进行了测试。

Linux cp命令

需要在命令行上执行复制操作,cp应该是你的go-to命令。 根据其手册页,该工具可用于复制文件和目录。 这是命令的通用语法:

cp [OPTION]... SOURCE DEST

上述命令将SOURCE复制到DEST。 以下Q&A类型的示例将使您更好地了解该工具的工作原理。

Q1。 如何执行基本的复印操作?

cp的基本用法非常简单,您只需指定源和目的地即可。 例如,以下命令将当前工作目录中的'file1'复制到Desktop目录中:

cp file1 ~/Desktop

Q2。 覆盖前如何使cp提示?

如果复制文件的目的地已经包含一个同名文件,那么cp命令将自动覆盖现有文件。 但是,如果需要,可以在完成覆盖之前使工具提示。 这可以通过以交互模式运行cp来实现,这是使用-i选项启用的。

例如:

cp -i file1 ~/Desktop/

因此,您可以在上面的屏幕截图中看到, -i选项使cp向用户询问是否覆盖目标目录中同名的现有文件。

Q3。 如何强制cp不覆盖现有文件?

有时,您可能不希望cp覆盖现有文件,而且您也不希望启用我们刚才在上一节中讨论的交互式选项。 那么对于这种情况,您可以使用-n命令行选项。

例如:

cp -n file1 ~/Desktop/

请注意,-n覆盖-i选项,即使您使用-i与-n,该命令也不会以交互模式运行。

Q4。 如何使用cp复制目录?

默认情况下,cp命令仅适用于文件。 如果您尝试复制目录,您可能会收到“cp:omitting directory”错误。 因此,无论何时需要复制目录,请使用-r命令行选项。

例如:

cp -r dir ~/Desktop

Q5。 如何使用cp命令创建符号链接?

如果需要,您也可以要求cp创建一个符号链接,而不是实际复制一个文件。 这可以使用-s命令行选项来完成。

例如:

cp -s ~/htf-daily/file1 ~/Desktop/

Q6。 如何使cp覆盖目标文件只有源是较新的?

有时,要求是仅在源文件较新时覆盖现有文件 - 将此过程视为更新文件。 这可以使用-u命令行选项来完成。

例如,假设要将驻留在当前工作目录中的'file1'复制到Desktop目录,但是目标文件名已经有一个名为'file1'的文件。 而且,如果源码比目的地更新,您只想复制。 这可以使用以下命令完成:

cp -u file1 ~/Desktop

Q7。 如何使cp不遵循来源的符号链接?

默认情况下,cp命令在源代码中遵循符号链接。 这意味着,例如,如果您尝试将一个符号链接的文件复制到另一个文件,那么默认情况下,复制操作是在符号链接引用的文件上执行的。 我的意思是,如果〜/ Desktop / file1〜/ htf-daily / file1的符号链接,并尝试将〜/ Desktop / file1复制到〜/ Downloads ,那么〜/ htf-daily / file1将被复制到。

但是,如果要求是复制符号链接本身,则可以使用-P命令行选项来实现,这可以使cp不遵循源代码中的符号链接。 所以在我们的情况下,命令是:

cp -P ~/Desktop/file1 ~/Downloads/

Q8。 如何仅复制文件属性?

有时,要求只能是复制属性(如所有权和时间戳),而不是复制文件的内容。 这可以使用--attributes-only命令行选项以及--preserve选项来实现。

例如,file1具有以下属性:

-rw-rw-r-- 1 root himanshu 97 Jun 14 17:18 file1

而file2具有以下属性:

-rw-rw-r-- 1 root himanshu 179 May 25 15:09 file2

注意 :您可以使用ls命令为文件获取这些属性。 有关ls的更多信息,请来这里

并且要求是复制file2的属性,并将它们用于file1,然后这是如何完成的:

cp --attributes-only --preserve file2 file1

这是上述命令行动:

结论

您同意,cp命令的基本用法不是很难理解。 在本教程中,我们尝试覆盖大部分有用的命令行选项。 最后尝试一下,之后,转到工具的手册页,看看命令提供的其他功能/选项。 如有任何疑问或疑问,请在下方留下评论。

赞(52) 打赏
未经允许不得转载:优客志 » 系统运维
分享到:

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏