如何使用终端将文件夹的内容复制到不同目录中的另一个文件夹?

我试图使用终端将文件夹的内容复制到不同目录中的另一个文件夹。

有人能够为我提供实现此目的所需的命令行语法的示例吗?

您可以使用该命令将文件夹/source的内容复制到另一个现有文件夹/dest

 cp -a /source/. /dest/ 

-a选项是一种改进的递归选项,它保留所有文件属性,并保留符号链接。

这个. 在源路径的末尾是一个特定的cp语法,允许复制所有文件和文件夹,包括隐藏的文件和文件夹。

另一种是rsync

 rsync -r source/ destination 

rsync的优点是:

  1. 在初始同步之后,它将仅复制已更改的文件。

  2. 您可以通过网络使用它,方便$ HOME中的文件,尤其是配置文件。

假设你在~里面有一个名为folder1的文件夹,里面的folder1是1个名为file1的文件和2个名为sub1sub2的文件夹,每个文件夹中都包含其他文件和文件夹。

要将~/folder1所有内容复制到~/new_folder1您将使用

 cp -r ~/folder1/. ~/new_folder1 

然后new_folder1将包含folder1所有文件和文件夹。

cp是使用终端复制的命令, -r使其递归(因此,当前目录+当前内部的其他目录) ~/folder1是origin文件夹, ~/new_folder1是原始文件/文件夹的目标文件夹。

有关复制文件夹的详细信息,请查看http://www.cyberciti.biz/faq/copy-folder-linux-command-line/ 。 希望这可以帮助。

 cp Command 

cp是用于复制文件和目录的Linux命令。 语法如下:

 cp source destination cp dir1 dir2 cp -option source destination cp -option1 -option2 source destination 

在此示例中copy /home/vivek/letters文件夹及其所有文件到/usb/backup目录:

 cp -avr /home/vivek/letters /usb/backup 

哪里,

-a :保留指定的属性,例如目录,文件模式,所有权,时间戳,如果可能的话,还有其他属性:context,links,xattr,all。

-v :解释正在做什么。

-r :递归复制目录。 例

将名为/ tmp / conf的文件夹复制到/ tmp / backup:

 $ cp -avr /tmp/conf/ /tmp/backup 

如果有两个文件夹:(具有写入权限)

 drwxr-xr-x 4 vimal vimal 4096 Sep 9 12:17 . drwxr-xr-x 3 root root 4096 Aug 18 14:35 .. drwxrwxrwx 6 vimal vimal 4096 Sep 9 12:15 DATA drwxrwxrwx 7 vimal vimal 4096 Sep 9 12:15 PORTAL 

如果你在名为PORTAL的文件夹里面,你要复制另一个文件夹的所有内容,说同一级别的DATA,那么你会做

vimal@vimal-D3H:/var/www/html/PORTAL$ cp -a ../DATA/. .

你必须注意到2个点。 最后一个点说现在文件夹中的副本

一个跟随/ DATA /。 说要复制DATA文件夹中的所有CONTENTS,而不是DATA文件夹本身。

如果你删除这个尾随“。” 来自/ DATA /

然后整个DATA文件夹将被复制到PORTAL内(从你应对的地方)。