cp命令 复制目录结构和子目录文件 保持源目录的完整结构-爱代码爱编程
cp命令有一个 --recursive
或 -r
选项,可以递归地复制目录及其子目录和文件。下面是一个例子:
将目录 /home/user1/source
复制到 /home/user2/destination
:
cp -r /home/user1/source /home/user2/destination
这将复制 /home/user1/source
目录及其所有子目录和文件(包括隐藏文件)到 /home/user2/destination
。
注意:如果目标目录已经存在,则原来存在的文件将被覆盖。如果要避免这种情况,请使用 cp -R
命令来进行复制,而不是 cp -r
命令。
如果您想要在目标目录中创建新目录来保持源目录的完整结构,可以使用选项 --parents
或 -P
。这将在复制时创建所需的父目录。
以下是一个例子,将复制 /home/user1/source
目录及其所有子目录和文件(但不包括源目录)到 /home/user2/destination
,并将创建父目录结构:
cp -rP /home/user1/source/* /home/user2/destination/
请注意,为了避免将源目录复制到目标目录中,请使用通配符 *
。这将复制 /home/user1/source
目录下的所有文件和子目录,但不包括 /home/user1/source
目录本身。