Chinaunix首页 | 论坛 | 博客
  • 博客访问: 103724237
  • 博文数量: 19283
  • 博客积分: 9968
  • 博客等级: 上将
  • 技术积分: 196062
  • 用 户 组: 普通用户
  • 注册时间: 2007-02-07 14:28
文章分类

全部博文(19283)

文章存档

2011年(1)

2009年(125)

2008年(19094)

2007年(63)

分类: LINUX

2008-05-09 21:09:06

           接着继续写。上面说到了cd、mkdir、rmdir,其中mkdir、rmdir是管理目录的。下面介绍cp、rm、mv

1、cp(copy复制这个单词的简写,很好玩吧?)复制文件和目录。这个命令的功能不仅仅是复制,还可以用来备份和建立快捷方式,更新文件等。具体的命令可以通过man查看。下面是主要的参数:

  •  

    -a

  • #(same as -dpR)相当于-dpR   
  • -d 
  • #( same as –no-dereference –preserve=link) 如果复制的是连接文件,则复制原始的文件
  • -f, –force
  • #//if an existing destination file cannot be opened, remove it and try again
  • #强制复制,如果目标文件存在,则删除目标文件,在复制。   
  • -i, –interactive  
  • #prompt before overwrite 在目标文件存在的情况下,询问是否覆盖    
  • -H  
  • #follow command-line symbolic links   
  • -l, –link
  • #link files instead of copying  建立硬链接,而不是复制文件。(常用,重要)   
  • -p 
  • #same as –preserve=mode,ownership,timestamps  与文件的属性一起复制(常用,重要) 
  • -R, -r, –recursive
  • #copy directories recursively  复制目录,可以看出,-r命令总有递归的意思。 
  • -s, –symbolic-link
  • #make symbolic links instead of copying   建立符号连接,类似于快捷方式
  • -u, –update   
  • #copy  only  when  the SOURCE file is newer than the destination file or when the   destination file is missing   只有在目标文件不存在,或者是比原文件旧的时候才复制
  • A1、比如现在/tmp下面有test1、test2目录,test1下面又有test1、test2两个文件。要将test1目录复制到test2目录下,只要 
  •  cp -r /tmp/test1/ /temp/test2/就可以了。
  • A2、那我要想把test1目录下的所有东西复制到test2下应该怎么办?只要 cp /tmp/test1/* /tmp/test2/  就可以了(其中的*是通配符。怎
  • A3、复制文件和目录的时候,权限的权限是会改变的,这个时候可以使用-m参数保持权限不变
  • 么样?很方便吧?)

        记这些参数真的是麻烦,其实只要经常使用的话,会很快掌握的。有些参数只要有个印象,用的时候man就知道了。

2、rm   删除目录或者是文件(remove files or directories)

  •  

    -f, –force

  • #ignore nonexistent files, never prompt   强制删除,不询问
  • -i, –interactive   
  • #prompt before any removal 理所当然的是询问要不要删除
  • -r, -R, –recursive   
  • # remove directories and their contents recursively  跟cp里面的一样,删除目录的参数
  • A1、接着上面的例子 如果想删除test2目录,就可以 rm -rf /tmp/test2

3、mv  移动或者是重命名文件、目录move (rename) files)

 
  • -f, –force
  • # do not prompt before overwriting   强制移动,不询问
  • -i, –interactive   
  • # prompt before overwrite  还是询问 
  • -u, –update   
  • # move  only  when  the SOURCE file is newer than the destination file or when the destination file is missing
  • #只有在目标文件不存在,或者是比原文件旧的时候才复制
  • A1、将上面的test1目录命名为test  mv /tmp/test1 /tmp/test 即可
  • A2、复制test目录到test2目录下    mv /tmp/test  /tmp/test2 即可

     值得一提的是上面我们如果直接如用命令而不加上-i参数的话,系统也是询问我们是否要覆盖,这是为什么呢?因为有alias。在终端输入alias 会看到 mv=’mv -i’ alias rm=’rm -i’的字样,说明系统默认把mv等同于mv -i了,这样就会很方便,当然我们也可以自己设置。

     学会了上述基本命令以后,我们就可以进行简单的linux文件于目录的操作了,不用ctrl+c/x和ctrl+v,我们一样可以办的到,甚至还简单一些呢。

作者:

原载:

版权所有,转载时请以链接形式注明作者和原始出处及本声明

阅读(201) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~