简明Linux命令行笔记:cp

复制文件

cp [options] source-file destination-file

cp [options] source-file-list destination-directory

 

参数

第一种方式:source-file cp 要复制的文件路径名;destination-filecp 生成的副本文件路径名

第二种方式:source-file-listcp 要复制的文件路径名列表;destination-filecp 生成副本的目录路径名

 

选项

-b              如果目标文件已存在,则在覆盖的时候对目标文件先进行备份

-i               如果目标文件已存在,则在覆盖的时候进行提示

-f               强制覆盖目标文件,管你特么的权限和提示

-P              保留原文件中用户、组、权限、修改时间等信息进行复制

-u              比较原文件和已存在的同名目标文件修改时间,如果目标文件修改时间较新则不覆盖

-R或-r        递归复制目录层次和文件

-v              显示cp复制的每个文件的名称

 

示例

cp 当前目录

$ ls
a.txt
$ cp a.txt b.txt
$ ls
a.txt  b.txt

在当前目录中复制,此处将a.txt 复制为 b.txt

 

cp -iv 当前目录

$ ls
a.txt  b.txt
$ cp -iv a.txt b.txt 
cp:是否覆盖"b.txt"? y
"a.txt" -> "b.txt"

在当前目录中复制,如果文件已存在则确认是否覆盖,并显示复制信息

 

cp 多个文件 目录

$ cp a.txt b.txt c.txt abc/
$ ls
abc  a.txt  b.txt  c.txt
$ ls abc/
a.txt  b.txt  c.txt

复制多个文件到某目录,此处将a.txt b.txt c.txt复制到同目录下的abc文件夹

 

cp -r

$ cp -r abc dir/
$ ls
abc  a.txt  b.txt  c.txt  dir
$ ls dir
a.txt  b.txt  c.txt

递归复制整个目录,包括目录结构和文件

 

Tips

cp的选项中还有涉及到链接文件的复制,这里没有列出,俺又不是在重写手册

 

posted @ 2013-01-08 14:38  Nerxious  阅读(1381)  评论(0编辑  收藏  举报