关于Linux里cp这个命令心得

来源:互联网 发布:山东大学网络教育期末考试 编辑:程序博客网 时间:2024/06/07 18:59

cp这个命令用的挺多的,但有些地方不注意会有意想不到的错误,现在总结下:

cp [OPTION]... [-T] SOURCE DEST

cp [OPTION]... SOURCE... DIRECTORY

cp [OPTION]... -t DIRECTORY SOURCE...

cp SRC DEST

以上是cp的命令格式,下面分情况简绍:

如果SRC是单个文件,在DEST中目标不存在,新建和SRC文件同名文件,并用SRC内容填充。如果有和SRC文件同名的文件,将会覆盖文件内容。

如果SRC是多个文件,如果DEST是目录且在DEST中目标不存在,新建SRC同名的多个文件,并填充。如果DEST是目录且存在,将把SRC多个文件cp过去(如果有同名选择是否覆盖原文件),如果不存在的话会报错:cp: target `DEST目录名' is not a directory。

以上是SRC是文件的情况。

如果SRC是目录,使用是要加上-r或者-R选项。

cp的SRC是目录:

DEST不存在,创建DEST目录,复制SRC中的内容到DEST中。

DEST存在,如果是文件会报错,如果是目录就会DEST目录下创建SRC目录并复制内容。




以下是常用的选项:

-r,-R:递归复制内容,用在复制文件夹的时候

-a:保留原来所有属性,用于备份文件

-p:保留 mode,ownership,timestamp 模式、所有权、时间戳。-P相反,一般默认是不保留。

-v:显示cp过程

-f:如果已存在的文件覆盖失败,把文件删除重试。


cp命令常用到的大概这么多,如果再遇到再来补充。