1. 命令功能

cp --copy files and directories。复制文件或目录。

2. 语法格式

cp  [option]  source des

cp  [option]  source   directory

cp  [option]  -t directory  source

参数

参数说明

-a

--archive 相当于drp结合使用

-d

如果文件为链接文件,复制链接文件的源文件而非链接文件

-r

递归复制目录(包含目录下的多级子目录)

-p

连同文件的属性一起复制过去,而非预设属性

-f

force强制复制,若有重复或其他问题,不询问使用者,而强制复制

-i

当目的文件已存在,在覆盖前会先询问是否真的复制

-s

复制成为符号链接文件,即“快捷方式”文件

-u

若destination比source旧才更新destination

-t

默认情况下命令格式为cp 源文件 目标文件,使用-t 可以颠倒顺序 格式为 cp –t 目标文件 源文件

说明:当来源文件有两个以上,则最后一个目的文件一定要是目录才行。

3. 使用范例

基础范例

范例1  cp –a,把源文件的全部属性复制到目标目录,不带参数和代参数-a的比较。

[root@localhost home]# pwd

/home

[root@localhost home]# ls -l /home/cxf/test_cxf

-rw-rw-r--. 1 cxf cxf 12 Mar 13 18:05 /home/cxf/test_cxf

[root@localhost home]#

[root@localhost home]# cp /home/cxf/test_cxf /home/DIR/

[root@localhost home]# ls -l /home/DIR/test_cxf

-rw-r--r--. 1 root root 12 Mar 13 18:07 /home/DIR/test_cxf  #文件属组发生了变化

[root@localhost DIR]# cp -a /home/cxf/test_cxf /home/DIR/

[root@localhost DIR]# ls -l test_cxf

-rw-rw-r--. 1 cxf cxf 12 Mar 13 18:05 test_cxf    #带 –a参数 复制文件属性

通过带参数和不带参数比较文件修改时间属性:

[root@localhost DIR]# ls -lh /home/cxf/test_cxf

-rw-rw-r--. 1 cxf cxf 12 Mar 13 18:05 /home/cxf/test_cxf   #源文件修改时间属性

[root@localhost DIR]# cp /home/cxf/test_cxf .

[root@localhost DIR]# ls -lh test_cxf

-rw-r--r--. 1 root root 12 Mar 13 22:27 test_cxf          #时间属性发生变化、

[root@localhost DIR]# cp -p /home/cxf/test_cxf test_cxf_1  #复制文件并改名

[root@localhost DIR]# ls -lh test_cxf_1

-rw-rw-r--. 1 cxf cxf 12 Mar 13 18:05 test_cxf_1  #时间属性没有改变,故-a选项会连同文件属性,时间属性一同复制。

范例2 :-i参数实例

[root@localhost DIR]# cp -i /home/cxf/test_cxf .

cp: overwrite `./test_cxf'? y

[root@localhost DIR]# cp /home/cxf/test_cxf .  #为什么不带-i,也提示?

cp: overwrite `./test_cxf'? y                  #由于centos默认为cp设置了别名在,

增加了-i的参数。

[root@localhost DIR]# alias cp

alias cp='cp -i'

在shell脚本中执行cp时,若没有-i参数,则不会询问是否覆盖,由于命令行和shell脚本执行时的环境变量不同,在脚本中一般使用命令的全路径。

范例3 使用-r参数复制目录

[root@localhost home]# cp /root DIR/

cp: omitting directory `/root'   #复制root到DIR,提示会跳过目录/root,复制不成功。

[root@localhost home]# cp /root DIR/ -r  #把root目录复制到DIR目录中

[root@localhost home]# ls -l DIR/

total 12

dr-xr-x---. 4 root root 4096 Mar 13 22:41 root  #复制root目录成功

-rw-r--r--. 1 root root   12 Mar 13 22:34 test_cxf

-rw-rw-r--. 1 cxf  cxf    12 Mar 13 18:05 test_cxf_1

2. 技巧性范例

范例4 cp覆盖文件前不提示是否覆盖的几种方法。

第一种:使用命令全路径。

[root@localhost DIR]# cp /home/cxf/test_cxf .

cp: overwrite `./test_cxf'? y

[root@localhost DIR]# /bin/cp /home/cxf/test_cxf .

[root@localhost DIR]#

第二种:取消cp别名  unalias cp  重启后失效

第三种:命令开头使用反斜线(\)

[root@localhost DIR]# \cp /home/cxf/test_cxf .   #使用反斜线屏蔽系统别名。

[root@localhost DIR]#

cp 复制文件或目录的更多相关文章

  1. cp - 复制文件和目录

    总览 cp [选项] 文件路径 cp [选项] 文件...目录 POSIX 选项: [-fipRr] GNU 参数(最短形式): [-abdfilprsuvxPR] [-S SUFFIX] [-V { ...

  2. cp:复制文件和目录

    cp 命令,主要用来复制文件和目录,同时借助某些选项,还可以实现复制整个目录,以及比对两文件的新旧而予以升级等功能. cp 命令的基本格式如下:cp [选项] 源文件 目标目录/文件 选项: -a:相 ...

  3. 复制文件或目录命令 - cp

    1) 命令名称:cp 2) 英文原意:copy 3) 命令所在路径:/bin/cp 4) 执行权限:所有用户 5) 功能描述:复制文件或目录 语法: cp -rp [原文件或目录][目标目录] -r ...

  4. cp命令:复制文件和目录

    cp命令:复制文件和目录 [功能说明] cp命令可以理解英文单词copy的缩写,其功能为复制文件和目录. [语法格式] 1 cp [option] [source] [dest] 2 cp [选项] ...

  5. Linux命令(20)linux服务器之间复制文件和目录

    linux的scp命令: scp就是secure copy的简写,用于在linux下进行远程拷贝文件的命令,和它类似的命令有cp,不过cp只是在本机进行拷贝不能跨服务器. 有时我们需要获得远程服务器上 ...

  6. linux 的 scp 命令 可以 在 linux 之间复制 文件 和 目录

    转自:http://blog.csdn.net/snlying/article/details/6184102 Linux系统中scp命令的用法. scp就是secure copy的简写,用于在lin ...

  7. Linux 命令 - cp: 拷贝文件和目录

    命令格式 cp [OPTION]... [-T] SOURCE DEST cp [OPTION]... SOURCE... DIRECTORY cp [OPTION]... -t DIRECTORY ...

  8. 在linux服务器之间复制文件和目录命令scp

    scp是secure copy的简写,用于在Linux下进行远程拷贝文件的命令,和它类似的命令有cp,不过cp只是在本机进行拷贝不能跨服务器,而且scp传输是加密的.可能会稍微影响一下速度.当你服务器 ...

  9. linux cp 拷贝文件或目录

    cp 拷贝文件或目录 默认不能拷贝目录 常用来备份: [root@MongoDB ~]# cp a.txt /tmp/ [root@MongoDB ~]# cp /root/a.txt /tmp/ c ...

随机推荐

  1. 20180827(02)- Java发送邮件

    Java 发送邮件 使用Java应用程序发送E-mail十分简单,但是首先你应该在你的机器上安装JavaMail API 和Java Activation Framework (JAF) . 你可以在 ...

  2. YJJ's Salesman

    YJJ's Salesman YJJ is a salesman who has traveled through western country. YJJ is always on journey. ...

  3. Quadratic equation

    Quadratic equation 牛客多校九B 给定 $(x+y)\%mod=b$ $(x*y)\%mod=c$ 求 $x,y$ 二次剩余 求$((x-y)^{2})\%mod = (b\time ...

  4. [洛谷P3938]:斐波那契(fibonacci)(数学)

    题目传送门 题目描述 小$C$养了一些很可爱的兔子.有一天,小$C$突然发现兔子们都是严格按照伟大的数学家斐波那契提出的模型来进行繁衍:一对兔子从出生后第二个月起,每个月刚开始的时候都会产下一对小兔子 ...

  5. Linux中的atim、mtime、ctime

    - Linux中的atime.mtime.ctime 一.文件中的atime.mtime.ctime 1.含义及各种事件标记的显示方法 atime:最近一次访问文件的时间用ls -lu看到的时间为at ...

  6. Bootstrap 学习笔记 项目实战 响应式轮播图

    左右两个箭头可以随浏览器缩放进行移动 保持在图片中间 Html代码: <!DOCTYPE html> <html lang="zh-cn"> <hea ...

  7. GARENA面试

    约了2019年10月16日下午2点现场面 岗位:数据开发 下午2点准时到了公司,公司环境棒棒哒,hr小姐姐也是贴心,整个面试的过程真的棒棒哒. 在我所有的面试经历中,这个是体验感最棒的,其次是上中的面 ...

  8. 20191003 尚硅谷Spring Cloud教学视频

    视频信息 视频日期:2018-4-19 讲师:尚硅谷周阳 Spring Cloud版本:Dalston.RELEASE 当前版本:Greenwich SR3 微服务.微服务架构.Spring Clou ...

  9. JavaSE编码试题强化练习4

    1.编写一个Worker类,为Worker类添加相应的代码,使得Worker对象能正确放入TreeSet中.并编写相应的测试代码. /** * Worker类 */ public class Work ...

  10. Ubuntu解决Nvidia驱动缺失导致的HDMI无法输出问题

    朋友的电脑是联想Y7000,因为Nvidia驱动的问题几次头疼脑大.这次是出现了HDMI在Windows 10下输出正常,而Ubuntu系统下无法输出. 原因分析 如果通过HDMI去连接显示器以后会发 ...