码迷,mamicode.com
首页 > 其他好文 > 详细

cp:复制文件或目录

时间:2018-12-23 23:58:26      阅读:298      评论:0      收藏:0      [点我收藏+]

标签:cp命令   51cto   用户   包含   情况   重点   write   为什么   table   

【功能说明】

   cp命令可以理解为英文单词copy的缩写,其功能为复制文件或目录

【语法格式】

cp [option] [source]  [dest]
cp [选项]    [源文件]  [目标文件]

【选项说明】

参数选项 解释说明(带*的为重点)
-p 复制文件时保持文件的所有者、权限信息及时间属性
-d 如果复制的源文件是符号链接,那么仅复制符号链接本身,而且保留符号链接所指向的目标文件或目录
-r 递归复制目录,即复制目录下的所有层级的子目录及文件
-a 等同于上面的p、d、r 这3个选项功能的总和 <font color=#0099f6>*</font>
-i 覆盖已有文件前提示用户确认
-t 默认情况下命令格式是“cp 源文件 目标文件”,使用-t参数可以颠倒顺序,格式变为“cp -t 目标文件 源文件”

使用范例

1.基础范例

  • 无参数和带参数 -a 的比较
    技术分享图片

可以发现使用 -a 参数复制时,文件的时间属性没有改变,-a的参数功能包含-p参数保持文件属性的功能。

  • -i 参数的例子
    [root@tianakong test]# cp -i file1.txt  file5.txt  # <==使用-i参数复制文件,会提示是否覆盖文件
    cp: overwrite `file5.txt‘? 
    [root@tianakong test]# cp file1.txt file5.txt #<== 不使用 -i 参数一样的结果,为什么呢?
    cp: overwrite `file5.txt‘? 
    [root@tianakong test]# alias cp #<==原因是系统为cp命令默认设置了别名
    alias cp=‘cp -i‘

    CentOS 系统默认为cp命令设置了别名,即增加了-i的参数。但是在Shell脚本中执行cp时,若没有-i参数,则并不会询问是否覆盖。这是因为命令行和Shell脚本执行时的环境变量不同,不过在脚本中一般使用命令的全路径。

cp:复制文件或目录

标签:cp命令   51cto   用户   包含   情况   重点   write   为什么   table   

原文地址:http://blog.51cto.com/14142782/2334293

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!