Answers:
您使用-r(递归复制)并指定新名称
cp -r /path/to/directory /path/to/location/new-name
替换为真实路径...例如,stuff从我的主目录复制到现有目录backup并命名新目录stuff-backup(如果此目录已存在,请注意stuff将其复制到其中,而不是覆盖它)。
cp -r ~/stuff ~/backup/stuff-backup
~是您的主目录/home/$USER或/home/zanna我的情况下的快捷方式。如果当前工作目录是您的主目录,则可以忽略它-您可以在提示符下看到它
zanna@monster:~$
^--the ~ here is where I am - home!
您可以添加-v详细标志,以使cp正在执行的每个副本都报告出来...
$ cp -vr stuff backup/stuff-backup
'stuff/thing1' -> 'backup/stuff-backup/thing1'
'stuff/thing2' -> 'backup/stuff-backup/thing2
...
-v或--verbose标记:)
您需要的命令只是cp“复制”的缩写。
例如,可以将其与以下语法之一一起使用:
cp SOURCEFILE TARGETFILE
cp SOURCEFILE TARGETDIRECTORY
第一个变量允许您为目标文件指定一个新文件名,而第二个变量则在目标目录中创建一个具有相同名称的副本。当然,您必须首先用有效路径替换大写字母中的占位符。
但是,cp默认情况下仅对文件起作用,而对目录不起作用。要使其递归复制完整目录及其所有内容,必须添加以下-r选项:
cp -r SOURCEDIRECTORY TARGETDIRECTORY
您可以cp通过man cp在终端中输入来了解有关该命令的更多信息。
我发现更容易从最初更改到要复制的目录。在本例中,将目录更改为每个人都已调用的目录/boot。任何人都可以将以下命令复制并粘贴到其终端中。
cd /boot
sudo mkdir /boot_backup
sudo cp -r . /boot_backup
du /boot_backup -h
752K /boot_backup/extlinux/themes/debian-wheezy
756K /boot_backup/extlinux/themes
832K /boot_backup/extlinux
2.5M /boot_backup/grub/i386-pc
20K /boot_backup/grub/locale
2.3M /boot_backup/grub/fonts
7.2M /boot_backup/grub
565M /boot_backup
对于该cp命令,当前目录被标识为我们已更改.为的/boot目录。该-r选项使其可以递归地包含所有子目录。
为了确保它的工作运行du列出所有子目录和文件总大小在新目录/boot_backup在这种情况下。
完成本演练之后,请使用:sudo rm -r /boot_backup删除新目录及其子目录。
cp -r)将用于创建新目录并将所有文件复制到该目录中
cp -r如您所建议,该命令已在第三命令行上。本教程基于以下事实:每个人都有一个/boot目录,可以在自己的计算机上尝试该目录。如果我曾经使用过cp -r /home/GroundZero/Documents /home/GroundZero/Documents_backup阅读器,则无法将其复制并粘贴到其终端中-他们将进行更改,GroundZero从而产生更多的工作和出错的机会。希望您通过嵌入式教程对这个答案的亲吻感到满意。
cd ~/Documents/SomeObsucreFolder/2016/Nov/将当前目录设置为源目录的操作将更改终端提示,以确保其拼写正确,然后cp -r .用作源消除了重新键入源目录的麻烦。这只是我认为的好习惯。此外,一旦更改为源目录,就可以很容易地执行ls FIleName1,ls FileName2等操作, 以确保要备份的文件在那里,而不必为ls命令重复源目录名称。
您可以使用以下命令将目录从一个位置复制到另一子目录。
cp -Rvp /home/edmuntu/data /home/edmuntu/mydata/
命令说明: