掌握 macOS 命令行:如何通过终端复制和移动文件

掌握 macOS 命令行:如何通过终端复制和移动文件

命令行——隐藏在你 Mac 漂亮的脸庞后面的代码世界——有时提供了一种更快的方式来完成日常任务,而且它也是建立你的技术信誉的一种很酷的方式。您已经学习了如何使用命令行导航文件和文件夹以及删除文件和文件夹,并在需要时从手册页获得帮助。在这里,我将向您展示如何复制和移动文件,这些常用操作经常派上用场。我还将向您展示如何创建目录(这是 Unix 对文件夹的说法),以便您可以将文件移动到新位置。

为什么要麻烦命令行?

Finder 中复制和移动文件当然很容易,但是您可能想从命令行执行此操作的原因有很多:

  • 您可以将文件从一个位置复制或移动到另一个位置,而无需在 Finder 中打开窗口。
  • 您可以复制或移动隐藏在 Finder 中的文件。这些文件可能包含某些应用程序或 Mac 部分的设置,在其名称前包含一个点 (.),Finder 不会显示它们。
  • 您可以使用通配符复制或移动多个文件。
  • 您可以快速重命名文件。
  • 如果您因为 Mac 处于闪烁状态而无法访问 Finder,您可以使用命令行来解决问题。

复制文件和移动文件的区别

如果您在 Finder 中,并且将文件从桌面拖到您的文档文件夹或同一磁盘或卷上的任何其他文件夹,则您移动了该文件。该文件不再位于桌面上,只能在“文档”文件夹中找到。但是,如果将文件从桌面拖到外部硬盘,您会看到该文件仍保留在其原始位置;该文件已被复制。(您可能知道您可以在 Finder 中复制文件,即使是在同一硬盘上,只需在拖动文件时按住 Option 键即可。)

来自命令行的情况也是如此。有两个用于移动和复制的命令:mvcp。第一个与将文件拖到同一硬盘上的新位置相同。第二个执行 Option-drag 的操作,或者将文件拖动到不同的磁盘或卷时发生的情况。

如何复制文件和目录

使用cp命令复制文件很简单。首先,启动终端(在您的 /Applications/Utilities 文件夹中)。然后,使用以下语法创建命令:

cp source destination

例如,要将名为 MyFile.rtf 的文件从桌面文件夹复制到文档文件夹,您可以在终端中键入以下命令,然后按回车键:

cp ~/Desktop/MyFile.rtf ~/Documents

现在您的桌面上将有一个名为 MyFile.rtf 的文件,并且该文件的副本位于您的 Documents 文件夹中。

您会记得在“掌握命令行:导航文件和文件夹”中,波浪号 (~) 是您的主文件夹的快捷方式,其中包含您的文档文件夹。此命令在您指定的精确路径处获取文件作为源参数,并将其移动到目标目录(文件夹)。请注意,如果那里没有文件,或者如果您键入的名称不正确,终端将给您一个“没有这样的文件或目录”的错误。

掌握 macOS 命令行:如何通过终端复制和移动文件

如果您输入的文件路径不正确,Terminal 会提示您“没有这样的文件或目录”错误。

您还可以复制目录,包括它们包含的所有文件。这使用cpcommand的特殊“标志”或“选项”:-R或递归标志。当您将选项与命令一起使用时,这个附加字母(前面总是带有连字符 (-))告诉命令做一些不同的事情。递归选项告诉cp命令复制文件夹中的每个项目:每个子文件夹、每个子文件夹中的每个文件和文件夹,等等,一直向下复制到新位置。因此,您可以像这样将目录从桌面复制到文档文件夹:

cp -R ~/Desktop/MyFolder /Documents

如何移动文件

您可能已经猜到mv命令的工作方式相同。但是有两种方法可以使用mv命令。第一个将文件移动到不同的磁盘或卷;请记住,就像在 Finder 中一样,将文件复制到不同的卷不会删除原始文件,而移动会。因此,您可以发出此命令将文件从桌面移动到备份磁盘上的文件夹:

mv ~/Desktop/MyFile.rtf /Volumes/Backup/MyFolder

您还可以使用mv命令移动目录。语法是相同的,并且您不需要像使用cp命令那样使用-R标志:

mv ~/Desktop/MyFolder /Volumes/Backup

如何复制或移动多个文件

命令行的一大优点是可以使用通配符来简化命令。例如,如果要将桌面上的所有 .rtf 文件(富文本文件)复制到文档文件夹,可以使用星号 (*) 通配符:

cp ~/Desktop/*.rtf ~/Documents

您可以在mv命令中使用相同的通配符来移动多个文件。

如何重命名文件

mv命令还可以让您快速重命名文件。您所做的实际上是将文件移动到同一位置,但更改其名称。如果为其目标指定名称,则mv命令会在移动文件时更改文件的名称。您可以像这样更改文件名:

mv ~/Desktop/MyFile.rtf ~/Desktop/MyFile-old.rtf

这是一个很有价值的故障排除工具;您可以使用它来创建文件的备份副本,例如首选项文件,以备不时之需。但是您也可以仅仅因为要重命名文件而使用这种重命名方法。

您还可以使用cp复制文件并更改其名称。在这种情况下,您不仅需要指定目标目录,还需要指定文件名:

cp ~/Desktop/MyFile.rtf ~/Documents/MyFile1.rtf

如何创建目录(又名文件夹)

这是可能派上用场的最后一个命令:mkdir,生成目录命令。当您需要一次性创建一堆文件夹时,这非常有用,比如您正在开始的一个新项目。首先使用cd(更改目录)命令移动到要创建新目录的目录。到达那里后,运行此命令(在下面的示例中,DirectoryName是您想要的名称。用您想要的名称替换DirectoryName):

mkdir DirectoryName

您可以为该目录使用任何名称(例如,“热门项目”或“TPS 报告”),并且您可以使用一个命令创建多个目录:

mkdir MyDirectory1 MyDirectory2 MyDirectory3

使用这三个简单的命令(mvcpmkdir,您将能够复制和移动文件,以及创建目录以将文件保存在 Mac 文件系统中的任何位置。当您熟练使用这些命令时,您会发现它们使用起来有多么容易。

THE END