复制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等

?来源文件是否为目录

新版本Apache HTTP Server 2.4.51发布更新(有安全漏洞建议升级)

今天中午的时候看到群里网友在讨论新版本的Apache HTTP Server 2.4.51发布且建议更新升级,如果有服务器在使用较早版本的话可能需要升级安全,这次的版本中涉及到安全漏洞的问题。Apache HTTP 中2.4.50的修复补丁CVE-2021-41773 修复不完整,导致新的漏洞CVE-2021-42013。攻击者可以使用由类似别名的指令配置将URL映射到目录外的文件的遍历攻击。这里...

10GBIZ(月$2.36 ), 香港和洛杉矶CN2 GIA

10GBIZ服务商经常有看到隔壁的一些博客分享内容,我翻看网站看之前有记录过一篇,只不过由于服务商是2020年新成立的所以分享内容比较谨慎。这不至今已经有将近两年的服务商而且云服务产品也比较丰富,目前有看到10GBIZ服务商有提供香港、美国洛杉矶等多机房的云服务器、独立服务器和站群服务器。其中比较吸引到我们用户的是亚洲节点的包括香港、日本等七星级网络服务。具体我们看看相关的配置和线路产品。第一、香...

硅云香港CN2+BGP云主机仅188元/年起(香港云服务器专区)

硅云怎么样?硅云是一家专业的云服务商,硅云的主营产品包括域名和服务器,其中香港云服务器、香港云虚拟主机是非常受欢迎的产品。硅云香港可用区接入了中国电信CN2 GIA、中国联通直连、中国移动直连、HGC、NTT、COGENT、PCCW在内的数十家优质的全球顶级运营商,是为数不多的多线香港云服务商之一。目前,硅云香港云服务器,CN2+BGP线路,1核1G香港云主机仅188元/年起,域名无需备案,支持个...

linuxcp为你推荐
京沪高铁上市首秀哪些企业建设京沪高铁?硬盘工作原理高人指点:电子存储器(U盘,储存卡,硬盘等)的工作原理75ff.com开机出现www.ami.com是什么?怎么解决啊psbc.com怎样登录wap.psbc.com巫正刚想在淘宝开一个类似于耐克、阿迪之类的店、需要多少钱、如何能够代理www.119mm.comwww.993mm+com精品集!www.kknnn.com求有颜色的网站!要免费的99nets.com制作网络虚拟证件的网站 那里有呀?kb123.net连网方式:wap和net到底有什么不一样的partnersonline国外外贸平台有哪些?
大庆服务器租用 vps是什么 vps服务器 3322动态域名 希网动态域名 krypt sockscap 表单样式 国外空间 网通服务器ip anylink 有益网络 免费mysql 刀片服务器是什么 国外代理服务器地址 网站在线扫描 如何登陆阿里云邮箱 腾讯网盘 双11促销 第八届中美互联网论坛 更多