复制linuxcp命令详解

linuxcp  时间:2021-03-18  阅读:()

LINUX CP命令详解

Posted at 08月14,2009cp(复制档案或目录)

[root@linux~]#cp[-adfilprsu]来源档(source)目的檔(de stinatio n)

[root@linux~]#cp[options] sourc e 1 source2 source3….directory

参数

-a相当于-p dr的意思

-d若来源文件为连结文件的属性(link file)则复制连结文件属性而非档案本身-f为强制(fo rc e)的意思若有重复或其它疑问时不会询问使用者而强制复制

-i 若目的檔(destinatio n)已经存在时在覆盖时会先询问是否真的动作

-l 进行硬式连结(hard link)的连结档建立而非复制档案本身

-p连同档案的属性一起复制过去而非使用预设属性

-r 递归持续复制用于目录的复制行为

-s 复制成为符号连结文件(symbo lic link)亦即『快捷方式』档案

-u若destinatio n比source旧才更新destin atio n 

最后需要注意的如果来源档有两个以上则最后一个目的文件一定要是『目录』才行

范例

范例一将家目录下的.bashrc复制到/tmp下并更名为bashrc

[ro o t@linu x~]#c d/t mp

[root@linux tmp]#cp~/.bashrc bashrc

[ro ot@linux tmp]#cp-i~/.bashrc bashrccp: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/lo g/wtmp wtmp

-rw-rw-r–1 root utmp 71808 Jul 18 12:46/var/lo g/wtmp

-rw-r–r–1 root root 71808 Jul 1821: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的特性

范例三复制/e tc/这个目录下的所有内容到/t mp底下

[ro ot@linux tmp]#cp/e tc//tmpcp:o mittin g d irectory`/e tc’<==如果是目录不能直接复制要加上-r的参数[ro ot@linux tmp]#cp-r/etc//tmp

#还是要再次的强调喔 -r是可以复制目录但是档案与目录的权限会被改变#所以也可以利用c p-a/e tc/t mp来下达指令喔

范例四将范例一复制的bashrc建立一个连结档(symbolic link)

[ro ot@linux tmp]#ls -l bashrc

-rw-r–r–1 root root 395 Jul 1822:08 bashrc

[root@linux tmp]#cp-s bashrc b ashrc_slink

[ro ot@linux tmp]#cp-l bashrc ba shrc_hlink

[root@linux tmp]#ls -l bashrc*

-rw-r–r–2 root root 395 Jul 1822:08 bashrc

-rw-r–r–2 root root 395 Jul 1822:08 bashrc_hlink

lrwxrwxrwx 1 root root 6 Jul 1822:31 bashrc_slink->bashrc

#那个bashrc_slink是由-s的参数造成的建立的是一个『快捷方式』 

#所以您会看到在档案的最右边会显示这个档案是『连结』到哪里去的#至于那个bashrc_hlink有趣了建立了这个档案之后 bashr c与bashrc_hlin k#所有的参数都一样只是第二栏的link数改变成为2了而不是原本的1喔#这两种连结的方式的异同我们会在下一章里面进行介绍的

范例五若~/.bashrc比/tmp/bashrc新才复制过来

[roo t@linux tmp]#cp-u~/.ba shrc/tmp/bashrc

#这个-u的特性是在目标档案与来源档案有差异时才会复制的。

#所以 比较常被用于『备份』的工作当中喔 ^_^

范例六将范例四造成的b ashrc_s link复制成为b ashr c_slink_2

[root@linux tmp]#cp bashrc_s link b ashrc_slink_2

[root@linux tmp]#ls -l ba shrc_s link*lrwxrwxrwx 1 root root 6 Jul 1822:31 bashrc_slink->bashrc

-rw-r–r–1 root root 395 Jul 1822:48 bashrc_slink_2

#这个例子也是很有趣喔原本复制的是连结档但是却将连结档的实际档案复制过来了

#也就是说如果没有加上任何参数时复制的是源文件而非连结文件的属性#若要复制连结文件的属性就得要使用-d或者-a的参数了

范例七将家目录的.bashrc及.bash_his tory复制到/tmp底下

[ro ot@linux tmp]#cp~/.bashrc~/.bash_history/tmp

#可以将多个数据一次复制到同一个目录去

这个cp的功能很多而由于我们常常在进行一些数据的复制所以也会常常用到这个指令的。 一般来说我们如果去复制别人的数据(当然该档案您必须要有re a d的权限才行啊 ^_^)时 总是希望复制到的数据最后是我们自己的所以

在预设的条件中 cp的来源档与目的档的权限是不同的 目的档的拥有者通常会是指令操作者本身。举例来说 上面的范例二中 由于我是ro o t的身份 因此复制过来的档案拥有者与群组就改变成为ro o t所有了 这样说可以明白吗 ^ ^

_

由于具有这个特性 因此 当我们在进行备份的时候某些需要特别注意的特殊权限档案 例如密码文件(/etc/shadow)以及一些设定档就不能直接以cp来复制而必须要加上-a或者是-p等等可以完整复制档案权限的参数才行另外如果您想要复制档案给其它的使用者 也必须要注意到档案的权限(包含读、写、执行以及档案拥有者等等) 否则其它人还是无法针对您给予的档案进行修订的动作喔注意注意

至于上面的范例当中第四个范例是最有趣的使用-l及-s都会建立所谓的连结档(link file) 但是这两种连结档确有不一样的展现情况。这是怎么一回事啊那个-l就是所谓的hard link至于-s则是symbo lic link鸟哥这里先不介绍 因为这个涉及i-node的相关知识我们还没有介绍到下一章再来讨论这个link的问题喔 总之 由于cp有种种的档案属性与权限的特性所以在复制时您必须要清楚的了解到

?是否需要完整的保留来源档案的信息

?来源档案是否为连结档(symbolic link file)

?来源档是否为特殊的档案例如FIFO, socket等

?来源文件是否为目录

[黑五]ProfitServer新加坡/德国/荷兰/西班牙VPS五折,不限流量KVM月付2.88美元起

ProfitServer已开启了黑色星期五的促销活动,一直到本月底,商家新加坡、荷兰、德国和西班牙机房VPS直接5折,无码直购最低每月2.88美元起,不限制流量,提供IPv4+IPv6。这是一家始于2003年的俄罗斯主机商,提供虚拟主机、VPS、独立服务器、SSL证书、域名等产品,可选数据中心包括俄罗斯、法国、荷兰、美国、新加坡、拉脱维亚、捷克、保加利亚等多个国家和地区。我们随便以一个数据中心为例...

RAKsmart裸机云/云服务器/VPS全场7折,独立服务器限量秒杀$30/月起

适逢中国农历新年,RAKsmart也发布了2月促销活动,裸机云、云服务器、VPS主机全场7折优惠,新用户注册送10美元,独立服务器每天限量秒杀最低30.62美元/月起,美国洛杉矶/圣何塞、日本、香港站群服务器大量补货,1-10Gbps大带宽、高IO等特色服务器抄底价格,机器可选大陆优化、国际BGP、精品网及CN2等线路,感兴趣的朋友可以持续关注下。裸机云新品7折,秒杀产品5台/天优惠码:Bare-...

LetBox:美国洛杉矶/新泽西AMD大硬盘VPS,10TB流量,充值返余额,最低3.3美元两个月

LetBox此次促销依然是AMD Ryzen处理器+NVME硬盘+HDD大硬盘,以前是5TB月流量,现在免费升级到10TB月流量。另外还有返余额的活动,如果月付,月付多少返多少;如果季付或者半年付,返25%;如果年付,返10%。依然全部KVM虚拟化,可自定义ISO系统。需要大硬盘vps、大流量vps、便宜AMD VPS的朋友不要错过了。不过LetBox对帐号审核严格,最好注册邮箱和paypal帐号...

linuxcp为你推荐
网易网盘关闭入口如何快速开通网易网盘?嘀动网在炫动网买鞋怎么样,是真的吗mole.61.com摩尔庄园的米米号和密码我都忘了 只记得注册的邮箱 怎么办-_-5xoy.comhttp://www.5yau.com (舞与伦比),以前是这个地址,后来更新了,很长时间没玩了,谁知道现在的地址? 谢谢,www.niuav.com给我个看电影的网站555sss.comms真的是500万像素?xyq.cbg.163.com梦幻西游藏宝阁怎么开通怎么用www.5566.com.cn免费手机游戏云鹏清16届大学生篮球联赛西北赛前八强苗惟妮大好时光演员表珊珊
vps动态ip 漂亮qq空间 omnis 账号泄露 512au 好玩的桌面 国外php空间 mysql主机 京东商城双十一活动 dd444 服务器干什么用的 hkt 爱奇艺会员免费试用 安徽双线服务器 我的世界服务器ip 防cc攻击 lamp什么意思 lamp架构 大化网 电信主机托管 更多