免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 15494 | 回复: 8
打印 上一主题 下一主题

linux基本命令之cp [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2009-04-05 01:58 |只看该作者 |倒序浏览
转自Easy Linux 社 区  原帖地址:http://www.1zlinux.com/bbs/thread-265-1-1.html
cp是文件复制命令
cp命令介绍
1.名称:cp
2.使用对象:所有使用者
3.命令格式:cp [选项]... [-T] 源 目的
         或:cp [选项]... 源... 目录
         或:cp [选项]... -t 目录 源...
4.作用:将<源>文件复制至<目的>,或将多个<源>复制至<目录>。
5.参数详解:
-a  尽可能的将目录文件原样复制(包括权限,状态,时间等),相当于-dpR
-d  保留文件原有链接
-f  若<目的>处存在与<源>相同的文件,则先删除文件后再复制
-i  复制时提问是否覆盖<目的>处相同的文件
-l  不做复制,只是链接文件(源文件与目标文件保持同步更新)
-p  复制时除了复制文件内容后,将文件的mode,ownership,timestamps都复制到新文件中
-r  复制目录及目录下的所有内容
-s  创建源文件的链接

6.使用范例:(使用其中几个参数举例说明)

  1. [snms@snms test]$ ll
  2. 总计 12
  3. -rw-rw-r-- 1 snms snms   14 04-05 08:41 dd
  4. drwxrwxr-x 2 snms snms 4096 04-05 09:29 dir1
  5. drwxrwxr-x 3 snms snms 4096 04-05 09:26 dir2
  6. [snms@snms test]$ cp -s dd aa   #创建链接
  7. [snms@snms test]$ ll
  8. 总计 12
  9. lrwxrwxrwx 1 snms snms    2 04-05 09:30 aa -> dd
  10. -rw-rw-r-- 1 snms snms   14 04-05 08:41 dd
  11. drwxrwxr-x 2 snms snms 4096 04-05 09:29 dir1
  12. drwxrwxr-x 3 snms snms 4096 04-05 09:26 dir2
  13. [snms@snms test]$ cp -d aa cc   #复制时保留链接
  14. [snms@snms test]$ ll
  15. 总计 12
  16. lrwxrwxrwx 1 snms snms    2 04-05 09:30 aa -> dd
  17. lrwxrwxrwx 1 snms snms    2 04-05 09:30 cc -> dd
  18. -rw-rw-r-- 1 snms snms   14 04-05 08:41 dd
  19. drwxrwxr-x 2 snms snms 4096 04-05 09:29 dir1
  20. drwxrwxr-x 3 snms snms 4096 04-05 09:26 dir2
  21. [snms@snms test]$ su root
  22. 密码:
  23. [root@snms test]# cp dd bb  #使用root复制时,复制后的文件权限为root
  24. [root@snms test]# ll
  25. 总计 16
  26. lrwxrwxrwx 1 snms snms    2 04-05 09:30 aa -> dd
  27. -rw-r--r-- 1 root root   14 04-05 09:32 bb
  28. lrwxrwxrwx 1 snms snms    2 04-05 09:30 cc -> dd
  29. -rw-rw-r-- 1 snms snms   14 04-05 08:41 dd
  30. drwxrwxr-x 2 snms snms 4096 04-05 09:29 dir1
  31. drwxrwxr-x 3 snms snms 4096 04-05 09:26 dir2
  32. [root@snms test]# cp -p dd ee   #使用-p参数保留文件属性
  33. [root@snms test]# ll
  34. 总计 20
  35. lrwxrwxrwx 1 snms snms    2 04-05 09:30 aa -> dd
  36. -rw-r--r-- 1 root root   14 04-05 09:32 bb
  37. lrwxrwxrwx 1 snms snms    2 04-05 09:30 cc -> dd
  38. -rw-rw-r-- 1 snms snms   14 04-05 08:41 dd
  39. drwxrwxr-x 2 snms snms 4096 04-05 09:29 dir1
  40. drwxrwxr-x 3 snms snms 4096 04-05 09:26 dir2
  41. -rw-rw-r-- 1 snms snms   14 04-05 08:41 ee
  42. [root@snms test]# cp aa bb cc dd ee dir2
  43. [root@snms test]# cp -r dir2/* dir1   #复制目录及其下内容
  44. [root@snms test]# ll dir1
  45. 总计 20
  46. -rw-r--r-- 1 root root 14 04-05 09:39 aa
  47. -rw-r--r-- 1 root root 14 04-05 09:39 bb
  48. -rw-r--r-- 1 root root 14 04-05 09:39 cc
  49. -rw-r--r-- 1 root root 14 04-05 09:39 dd
  50. -rw-r--r-- 1 root root 14 04-05 09:39 ee
  51. [root@snms test]#
复制代码
7.cp小技巧:
1)为防止用户不小心删除某个文件,用户在使用cp时可以使用i参数。

2)cp可以用来修改文件名,如
  1.   cp aa dd  将aa改名为dd
复制代码
3)用户也可以在/etc/.bashrc中加入一句话来使每次删除文件时都要确认。
  1. alias cp='cp -i'
复制代码
如果用户已经修改了/etc/.bashrc文件,则可以使用"\cp [选项]... [-T] 源 目的" 来避免提问。

4)cp命令中使用"*"参数,不能匹配以"."开头的隐藏文件。



就想到这么多,大家有什么不懂或补充,请在下面跟贴说明。

论坛徽章:
0
2 [报告]
发表于 2009-04-05 02:12 |只看该作者
补充一点。
使用cp --help时可以得到一段这样的信息。

  1. 默认使用模式中,<源>文件是否 sparse 文件会由一种粗略的方式决定,而且相应
  2. 的<目的地>文件也会是 sparse 文件。此方式等于使用 --sparse=auto 选项。指定
  3. --sparse=always 则只要<源>文件含有足够长的 0 字节都会产生 sparse 的
  4. <目的地>文件。
  5. 使用 --sparse=never 会禁止产生 sparse 文件。

  6. 备份文件的后缀为“~”,除非以 --suffix 选项或是 SIMPLE_BACKUP_SUFFIX
  7. 环境变量指定。版本控制的方式可透过 --backup 选项或 VERSION_CONTROL 环境
  8. 变量来选择。以下是可用的变量值:

  9.   none, off       不会进行备份 (即使使用了 --backup 选项)
  10.   numbered, t     备份文件会加上数字
  11.   existing, nil   若有数字的备份文件已经存在则使用数字,否则使用普通方式备份
  12.   simple, never   永远使用普通方式备份

  13. 有一个特别情况:如果同时指定 --force 和 --backup 选项,而且<源>和<目的地>
  14. 是同一个已存在的普通文件的话,cp 会将<源>文件备份。

复制代码

论坛徽章:
0
3 [报告]
发表于 2009-04-05 20:00 |只看该作者

回复 #1 十年梦生 的帖子

不过一些操作使用tar更加的便利

论坛徽章:
0
4 [报告]
发表于 2009-04-05 20:21 |只看该作者
cp的参数不要记这么多吧!只要是记住常用的几个就可以了。

论坛徽章:
0
5 [报告]
发表于 2009-04-06 00:47 |只看该作者

回复 #4 luotengfei520 的帖子

觉得这些常用的命令会用就成了,搞得这么复杂,特意看怎么能记住呢,用多了自然记住了!

论坛徽章:
0
6 [报告]
发表于 2009-04-06 10:26 |只看该作者
很多命令 记几个常用参数就差不多够用了.每一个命令的参数太多了.有时都记混了

论坛徽章:
0
7 [报告]
发表于 2009-04-06 11:24 |只看该作者
记住几个常用的就不错啦

论坛徽章:
0
8 [报告]
发表于 2009-04-06 12:34 |只看该作者
这个man一下不就都有了?
常用的记住就行了~

论坛徽章:
0
9 [报告]
发表于 2009-04-06 13:55 |只看该作者
会考虑 大家的 意见 的
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP