AllisonC Asked: 2017-12-22 05:28:06 +0800 CST2017-12-22 05:28:06 +0800 CST 2017-12-22 05:28:06 +0800 CST 如何复制目录并在同一命令中重命名它? 772 目前,我正在运行这两个命令来创建目录的快速备份。有没有办法将这两个命令组合成一个命令,以便我在一个命令中复制和重命名新目录? #cp -R /tf/Custom_App /tf/Custom_App_backups/ #mv /tf/Custom_App_backups/Custom_App /tf/Custom_App_backups/Custom_App_2017-12-21 cp mv 4 个回答 Voted Best Answer ilkkachu 2017-12-22T05:45:23+08:002017-12-22T05:45:23+08:00 你应该能够做到 cp -R /tf/Custom_App /tf/Custom_App_backups/Custom_App_2017-12-21 但是,如果目标目录已经存在,这会将源路径的最后部分附加到目标路径,创建 /tf/Custom_App_backups/Custom_App_2017-12-21/Custom_App,然后在其中复制树的其余部分。 为防止这种情况,/tf/Custom_App/.请用作源。当然,在这种情况下rm -r /tf/Custom_App_backups/Custom_App_2017-12-21,如果您不希望复制后的旧文件存在,您可能首先需要这样做。 之前在cp中讨论过/some/dir和之间的区别在. (dot) 或 .. (dot dot) 是源目录/some/dir/. Abel Melquiades Callejo 2019-05-28T09:10:23+08:002019-05-28T09:10:23+08:00 或者,您可以这样做: mkdir /tf/Custom_App_backups/Custom_App_2017-12-21 # prepare the target location cp -R /tf/Custom_app/. /tf/Custom_App_backups/Custom_App_2017-12-21 # copy only the contents 这将允许您事先指定您的自定义位置。另外,请注意它使用后缀/.This 允许您仅复制内容并排除其包含的文件夹 - 在本例中是Custom_app文件夹。 pmg7670 2021-10-09T18:44:28+08:002021-10-09T18:44:28+08:00 我遇到了这个页面来寻找同样的建议。在我的 Ubuntu 20.04 (Focal Fossa) 系统上,我尝试了这个命令并使用了与 @ilkkachu 提供的相同的语法。除了我在我的 dest 文件夹中添加了一个斜杠,例如 dest/ 。结果复制了源文件夹及其兄弟文件夹!当我在没有斜杠的情况下重试时,我得到了想要的结果。 因此,为了将来参考,请注意在 dest 文件夹中添加尾部斜杠也会复制源兄弟姐妹(.. 至少,这是我的经验) RAJ KUMAR NAYAK 2022-06-03T21:18:45+08:002022-06-03T21:18:45+08:00 您可以通过创建目标目录轻松地继续: mkdir Custom_App_2017-12-21 cd Custom_App_2017-12-21/ cp -R /tf/Custom_App/* . 最后一个命令会将所有相关文件复制到新创建的目录中。
你应该能够做到
但是,如果目标目录已经存在,这会将源路径的最后部分附加到目标路径,创建
/tf/Custom_App_backups/Custom_App_2017-12-21/Custom_App
,然后在其中复制树的其余部分。为防止这种情况,
/tf/Custom_App/.
请用作源。当然,在这种情况下rm -r /tf/Custom_App_backups/Custom_App_2017-12-21
,如果您不希望复制后的旧文件存在,您可能首先需要这样做。之前在cp中讨论过
/some/dir
和之间的区别在. (dot) 或 .. (dot dot) 是源目录/some/dir/.
或者,您可以这样做:
这将允许您事先指定您的自定义位置。另外,请注意它使用后缀
/.
This 允许您仅复制内容并排除其包含的文件夹 - 在本例中是Custom_app
文件夹。我遇到了这个页面来寻找同样的建议。在我的 Ubuntu 20.04 (Focal Fossa) 系统上,我尝试了这个命令并使用了与 @ilkkachu 提供的相同的语法。除了我在我的 dest 文件夹中添加了一个斜杠,例如 dest/ 。结果复制了源文件夹及其兄弟文件夹!当我在没有斜杠的情况下重试时,我得到了想要的结果。
因此,为了将来参考,请注意在 dest 文件夹中添加尾部斜杠也会复制源兄弟姐妹(.. 至少,这是我的经验)
您可以通过创建目标目录轻松地继续:
最后一个命令会将所有相关文件复制到新创建的目录中。