今天在练习Linux命令的时候,用CP命令时,出现了以下错误
于是查看了CP命令的用法之后改为
其中加上-r就ok了,其实我们仔细的查看cp命令的用法会知道,-r是递归复制的意思,就是把目录下面的所有的文件都复制,所以有关CP命令还有好多意思,我们用到的时候可以用man cp来查看一下。
CP命令
该命令的功能是将给出的文件或目录拷贝到另一文件或目录中,同MSDOS下的copy命令一样,功能十分强大。
【语法】 cp [选项] 源文件或目录 目标文件或目录
【说明】该命令把指定的源文件复制到目标文件或把多个源文件复制到目标目录中。
【含义】
- a 该选项通常在拷贝目录时使用。它保留链接、文件属性,并递归地拷贝目录,其作用等于dpR选项的组合。(复制的时候要保留文件属性用-a,不然会导致服务无法应用等问题,例如原文件拥有者为oracle,直接cp后文件拥有者变为root,会导致数据库服务器无法使用,可以使用chown修改文件拥有者,或者复制的时候直接用cp -a命令)
- d 拷贝时保留链接。
- f 删除已经存在的目标文件而不提示。
- i 和f选项相反,在覆盖目标文件之前将给出提示要求用户确认。回答y时目标文件将被覆盖,是交互式拷贝。
- p 此时cp除复制源文件的内容外,还将把其修改时间和访问权限也复制到新文件中。
- r 若给出的源文件是一目录文件,此时cp将递归复制该目录下所有的子目录和文件。此时目标文件必须为一个目录名。
- l 不作拷贝,只是链接文件。
需要说明的是,为防止用户在不经意的情况下用cp命令破坏另一个文件,如用户指定的目标文件名已存在,用cp命令拷贝文件后,这个文件就会被新源文件覆盖,因此,建议用户在使用cp命令拷贝文件时,最好使用i选项。
例子:
cp -i file1 file2 (将文档 file1 复制成 file2 . –i为提示确认)
cp file1 dir1 (将文档 file1 复制到目录 dir1 下,文件名仍为 file1)
cp /tmp/file1 . (将目录 /tmp 下的文档 file1复制到现行目录下,档名仍为 file1)
cp /tmp/file1 file2 (将目录 /tmp 下的文档 file1现行目录下(这儿注意一下,记住要复制到现行目录下面时是“.”),档名为file2
cp -r dir1 dir2 (recursive copy) 复制整个目录.若目录 dir2 不存在,则将目录dir1,及其所有文档和子目录,复制到目录 dir2 下,新目录名称为dir1.若目录dir2不存在,则将dir1,及其所有文档和子目录,复制为目录 dir2)
阅读(1468) | 评论(0) | 转发(0) |