ubuntu copy命令「建议收藏」

ubuntu copy命令「建议收藏」cp(copy)命令该命令的功能是将给出的文件或目录拷贝到另一文件或目录中。语法:cp[选项]源文件或目录目标文件或目录说明:该命令把指定的源文件复制到目标文件或把多个源文件复制到目标目录中。该命令的各选项含义如下:-a该选项通常在拷贝目录时使用。它保留链接、文件属性,并递归地拷贝目录,其作用等于dpR选项的组合。-d拷贝时保留链接。

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全家桶1年46,售后保障稳定

cp(copy)命令

该命令的功能是将给出的文件或目录拷贝到另一文件或目录中。

语法: cp [选项] 源文件或目录 目标文件或目录

说明:该命令把指定的源文件复制到目标文件或把多个源文件复制到目标目录中。

该命令的各选项含义如下:

– a 该选项通常在拷贝目录时使用。它保留链接、文件属性,并递归地拷贝目录,其作用等于dpR选项的组合。

– d 拷贝时保留链接。

– f 删除已经存在的目标文件而不提示。

– i 和f选项相反,在覆盖目标文件之前将给出提示要求用户确认。回答y时目标文件将被覆盖,是交互式拷贝。

– p 此时cp除复制源文件的内容外,还将把其修改时间和访问权限也复制到新文件中。

– r 若给出的源文件是一目录文件,此时cp将递归复制该目录下所有的子目录和文件。此时目标文件必须为一个目录名。

– l 不作拷贝,只是链接文件。

  需要说明的是,为防止用户在不经意的情况下用cp命令破坏另一个文件,如用户指定的目标文件名已存在,用cp

命令拷贝文件后,这个文件就会被新源文件覆盖,因此,建议用户在使用cp命令拷贝文件时,最好使用i选项。

例如:将/home/wally/test中 test.c 的文件复制到/local/arm 中,命令为:

cd /wally/test

ls

sudo cp -i test.c /local/arm

补充:

-a :相当于 -pdr 的意思; 
-d :若来源档为连结档的属性(link file),则复制连结档属性而非档案本身; 
-f :为强制 (force) 的意思,若有重复或其他疑问时,不会询问使用者,而强制复制; 
-i :若目的档(destination)已经存在时,在覆盖时会先询问是否真的动作! 
-l :进行硬式连结 (hard link) 的连结档建立,而非复制档案本身; 
-p :连同档案的属性一起复制过去,而非使用预设属性; 
-r :递回持续复制,用于目录的复制行为; 
-s :复制成为符号连结档 (symbolic link),亦即‘捷径’档案; 
-u :若 destination 比 source 旧才更新 destination ! 
最后需要注意的,如果来源档有两个以上,则最后一个目的档一定要是‘目录’才行! 
范例: 
范例一:将家目录下的 .bashrc 复制到 /tmp 下,并更名为 bashrc 
[root@linux ~]# cd /tmp 
[root@linux tmp]# cp ~/.bashrc bashrc 
[root@linux tmp]# cp -i ~/.bashrc bashrc 
cp: overwrite `basrhc’? n 
# 重复作两次动作,由于 /tmp 底下已经存在 bashrc 了,加上 -i 参数, 
# 则在覆盖前会询问使用者是否确定!可以按下 n 或者 y 呢! 
# 但是,反过来说,如果不想要询问时,则加上 -f 这个参数来强制直接覆盖! 

范例二:将 /var/log/wtmp 复制到 /tmp 底下 
[root@linux tmp]# cp /var/log/wtmp . <==想要复制到目前的目录,最后的 . 不要忘 
[root@linux tmp]# ls -l /var/log/wtmp wtmp 
-rw-rw-r– 1 root utmp 71808 Jul 18 12:46 /var/log/wtmp 
-rw-r–r– 1 root root 71808 Jul 18 21:58 wtmp 
# 注意到了吗?!在不加任何参数的情况下,档案的所属者会改变,连权限也跟着改变了~ 
# 这是个很重要的特性!要注意喔!还有,连档案建立的时间也不一样了! 
# 如果您想要将档案的所有特性都一起复制过来,可以加上 -a 喔! 
[root@linux tmp]# cp -a /var/log/wtmp wtmp_2 
[root@linux tmp]# ls -l /var/log/wtmp wtmp_2 
-rw-rw-r– 1 root utmp 71808 Jul 18 12:46 /var/log/wtmp 
-rw-rw-r– 1 root utmp 71808 Jul 18 12:46 wtmp_2 
# 了了吧!整个资料特性完全一模一样ㄟ!真是不赖~这就是 -a 的特性! 

范例三:复制 /etc/ 这个目录下的所有内容到 /tmp 底下 
[root@linux tmp]# cp /etc/ /tmp 
cp: omitting directory `/etc’ <== 如果是目录,不能直接复制,要加上 -r 的参数 
[root@linux tmp]# cp -r /etc/ /tmp 
# 还是要再次的强调喔! -r 是可以复制目录,但是,档案与目录的权限会被改变~ 
# 所以,也可以利用 cp -a /etc /tmp 来下达指令喔! 

范例四:将范例一复制的 bashrc 建立一个连结档 (symbolic link) 
[root@linux tmp]# ls -l bashrc 
-rw-r–r– 1 root root 395 Jul 18 22:08 bashrc 
[root@linux tmp]# cp -s bashrc bashrc_slink 
[root@linux tmp]# cp -l bashrc bashrc_hlink 
[root@linux tmp]# ls -l bashrc* 
-rw-r–r– 2 root root 395 Jul 18 22:08 bashrc 
-rw-r–r– 2 root root 395 Jul 18 22:08 bashrc_hlink 
lrwxrwxrwx 1 root root 6 Jul 18 22:31 bashrc_slink -> bashrc 
# 那个 bashrc_slink 是由 -s 的参数造成的,建立的是一个‘捷径’, 
# 所以您会看到在档案的最右边,会显示这个档案是‘连结’到哪里去的! 
# 至于那个 bashrc_hlink 有趣了!建立了这个档案之后, bashrc 与 bashrc_hlink 
# 所有的参数都一样,只是,第二栏的 link 数改变成为 2 了~而不是原本的 1 喔! 
# 这两种连结的方式的异同,我们会在下一章里面进行介绍的! 

范例五:若 ~/.bashrc 比 /tmp/bashrc 才复制过来 
[root@linux tmp]# cp -u ~/.bashrc /tmp/bashrc 
# 这个 -u 的特性,是在目标档案与来源档案有差异时,才会复制的。 
# 所以,比较常被用于‘备份’的工作当中喔! ^_^ 

范例六:将范例四造成的 bashrc_slink 复制成为 bashrc_slink_2 
[root@linux tmp]# cp bashrc_slink bashrc_slink_2 
[root@linux tmp]# ls -l bashrc_slink* 
lrwxrwxrwx 1 root root 6 Jul 18 22:31 bashrc_slink -> bashrc 
-rw-r–r– 1 root root 395 Jul 18 22:48 bashrc_slink_2 
# 这个例子也是很有趣喔!原本复制的是连结档,但是却将连结档的实际档案复制过来了 
# 也就是说,如果没有加上任何参数时,复制的是原始档案,而非连结档的属性! 
# 若要复制连结档的属性,就得要使用 -d 或者 -a 的参数了! 

范例七:将家目录的 .bashrc 及 .bash_history 复制到 /tmp 底下 
[root@linux tmp]# cp ~/.bashrc ~/.bash_history /tmp 
# 可以将多个资料一次复制到同一个目录去!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/210761.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • LevelDB库功能详解

    LevelDB库简介  一、LevelDB入门LevelDB是Google开源的持久化KV单机数据库,具有很高的随机写,顺序读/写性能,但是随机读的性能很一般,也就是说,LevelDB很适合应用在查询较少,而写很多的场景。LevelDB应用了LSM(LogStructuredMerge)策略,lsm_tree对索引变更进行延迟及批量处理,并通过一种类似于归并

    2022年4月8日
    39
  • 妇产科护理学试题库及答案_妇产科护理学题库集各章节

    妇产科护理学试题库及答案_妇产科护理学题库集各章节试题一1.关于子宫的位置与形态,正确的为DA.位于盆腔下方B.形如扁梨形C.容积为2mlD.前与膀胱,后与直肠为邻E.子宫峡部非孕时长3cm2.保持子宫前倾位置的一对主要韧带是CA.圆韧带B.阔韧带C.主韧带D.骨盆漏斗韧带E.子宫骶骨韧带3.与后穹隆顶端贴接的部分为EA.宫颈口B.附件C.膀胱D.直肠E.直肠子宫陷凹4.关于骨盆外测量径线的描述,错误的是BA.髂棘间径为两侧髂前上棘外缘间的距离B.坐骨结节间径为两侧坐骨结节外缘间的距离C

    2025年7月10日
    6
  • python微信推送{u‘errcode‘: 40008, u‘errmsg‘: u‘invalid message type rid: 6111061f-19703d5b[通俗易懂]

    python微信推送{u‘errcode‘: 40008, u‘errmsg‘: u‘invalid message type rid: 6111061f-19703d5b[通俗易懂]记录一下前两天自己搞的一个蠢事,当时是要做一个微信信息推送,我先是按照微信的接口文档和网上的一些例子把代码写好了,测试的时候一直报这个40008,看微信接口文档又是说消息类型不对,大概就是说你给的data跟你定义的模板格式不对但是我都对了好几次,发现没问题,后面检查了一下接口的链接,发现跟接口文档里的不一样,应该是在复制别人的时候复制错了,换成文档里的链接后就正常了。所以,以后遇到这种{u’errcode’:40008,u’errmsg’:u’invalidmessagetyperid:

    2022年6月10日
    68
  • 《剑指offer》– 构建乘积数组、求1+2+3+…+n、不用加减乘除做加法、包含min函数的栈、用两个栈实现队列

    《剑指offer》– 构建乘积数组、求1+2+3+…+n、不用加减乘除做加法、包含min函数的栈、用两个栈实现队列

    2021年10月3日
    46
  • Java方法重写与重载的区别

    Java方法重写与重载的区别Java方法重写与重载一、方法重写(0veriding)在Java程序中,类的继承关系可以产生一个子类,子类继承父类,它具备了父类所有的特征,继承了父类所有的方法和变量。子类可以定义新的特征,当子类需要修改父类的一些方法进行扩展,增大功能,程序设计者常常把这样的一种操作方法称为重写,也叫称为覆写或覆盖。重写体现了Java优越性,重写是建立在继承关系上,它使语言结构更加丰富。在J…

    2022年7月8日
    31
  • Matlab代码之plot函数的坐标点显示

    Matlab代码之plot函数的坐标点显示plot函数的xlabel、ylabel、title、text、legend1、在图像某个位置显示文字信息,2、用text()显示plot函数的坐标点;3、用legend()在一张图同时显示不同曲线;4、用xlabel()、ylabel()、title()显示横纵坐标和标题;5、用subplot在一张画布上画多个图像;新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个

    2022年10月15日
    4

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号