Linux基础知识之cp mv rm

该博文以CentOS6.8_x86_64系统为基础,Xshell 5远程连接CentOS系统,以root身份登录系统和sjsir普通用户身份登录系统。

为什么要学习cp、mv、rm命令?

    cp、mv、rm命令为Linux系统使用最长使用的三个命令之一,复制、移动和删除是我们平时处理一些文件必须要学会的命令,应该用于熟练掌握和使用的技能。

    cp命令:(copy)

    cp 只能复制一个文件到一个文件,复制多个文件到一个目录

格式:

  cp [OPTION]… [-T] SOURCE DEST

  cp [OPTION]… SOURCE… DIRECTORY

  cp [OPTION]… -t DIRECTORY SOURCE…

  cp SRC DEST

    blob.png

对于上图的总结:

    a.当源文件为单个文件的时候:

①若复制的目标文件夹不存在时,会首先建一个文件夹,然后将源文件复制到新建的目标文件夹下,且目标文件和源文件的名称相同;

     blob.png

②若复制的源文件名和目标文件名相同时,root账户执行操作的时候,会询问root用户是否执行复制操作(想当于使用cp -i 选项(alias可以查询root的cp<–>cp -i),系统认为root用户的权限过高,防止直接将源文件覆盖,造成文件系统的损坏或者部分文件丢失),sjsir用户执行时,会直接将目标文件直接覆盖,即使目标文件同名;

     root身份执行操作:

     blob.png

     sjsir身份执行操作:(继续覆盖不会提醒)

    blob.png

③若复制的源文件名和目标文件夹名相同时,会直接复制到该同名文件夹下;

    blob.png

选项:(由于学过几天命令,命令已经会使用,所以不再去执行命令具体参数的执行过程做具体的截图和操作,但是将特殊的选项做具体的讲解和分析。) 

     -i:交互式(每当源文件和目标文件相同时,会询问你是否继续操作将目标文件覆盖,root用户默认cp<–>cp -i)

     -r,-R:递归复制目录及内部的所有内容;

     -a:归档,相当于-dR –preserv=all

     -d –no-dereference –preserv=links :不复制原文件,只复制链接名

     –preserv[=ATTR_LIST]

         mode:权限

         ownership:属主属组

         timestamp:时间戳

         links:链接

         xattr 

         context:环境

         all:所有

     -p:  等同–preserv=mode,ownership,timestamp 保持原有文件的属性信息

     -v: –verbose 显示命令复制的过程

     -f: –force  强制覆盖

     mv命令:

mv命令是move的缩写,可以用来移动文件或者将文件改名(move (rename) files),是Linux系统下常用的命令,经常用来备份文件或者目录。

1.命令格式:

    mv [选项] 源文件或目录 目标文件或目录

2.命令功能:

视mv命令中第二个参数类型的不同(是目标文件还是目标目录),mv命令将文件重命名或将其移至一个新的目录中。当第二个参数类型是文件时,mv命令完成文件重命名,此时,源文件只能有一个(也可以是源目录名),它将所给的源文件或目录重命名为给定的目标文件名。当第二个参数是已存在的目录名称时,源文件或目录参数可以有多个,mv命令将各参数指定的源文件均移至目标目录中。在跨文件系统移动文件时,mv先拷贝,再将原有文件删除,而链至该文件的链接也将丢失。

3.命令参数;

-f :force 强制的意思,如果目标文件已经存在,不会询问而直接覆盖;

-i :若目标文件 (destination) 已经存在时,就会询问是否覆盖;

   4.命令实例:
       a.文件改名;mv history.log2 mv.log (将history.log2改名为mv.log)blob.png        b.移动单个文件;mv mv.log Desktop/ (将mv.log移动到Desktop目录下)

blob.png

        c.移动多个文件;

blob.png

     rm命令:

rm命令。rm是常用的命令,该命令的功能为删除一个目录中的一个或多个文件或目录,它也可以将某个目录及其下的所有文件及子目录均删除。对于链接文件,只是删除了链接,原有文件均保持不变。

rm是一个危险的命令,使用的时候要特别当心,尤其对于新手,否则整个系统就会毁在这个命令(比如在/(根目录)下执行rm -rf /(CentOS6.8和7.2都有保护 机制,但是rm -rf /*是可以直接执行的))。所以,我们在执行rm之前最好先确认一下在哪个目录,到底要删除什么东西,操作时保持高度清醒的头脑。

1.命令格式:

rm [选项] 文件… 

2.命令功能:

删除一个目录中的一个或多个文件或目录,如果没有使用- r选项,则rm不会删除目录。如果使用 rm 来删除文件,通常仍可以将该文件恢复原状。

3.命令参数:

    -f, –force    忽略不存在的文件,从不给出提示。

    -i, –interactive 进行交互式删除

    -r, -R, –recursive   指示rm将参数中列出的全部目录和子目录均递归地删除。

    -v, –verbose    详细显示进行的步骤

       –help     显示此帮助信息并退出

       –version  输出版本信息并退出

  4.rm命令比较简单,所以不演示和赘述了。

原创文章,作者:sjsir,如若转载,请注明出处:http://www.178linux.com/26494

(0)
sjsirsjsir
上一篇 2016-07-29 09:28
下一篇 2016-07-29 09:48

相关推荐

  • N26-博客作业-week11

    1、详细描述一次加密通讯的过程,结合图示最佳。 加密过程 1、先用单向加密算法计算出数据的特征码 2、私钥加密特征码,并将结果附加在数据之后 3、生成一个临时的对称密钥,并使用对称密钥加密整段数据 4、获取对方的公钥,使用该公钥加密之前生成的临时对称密钥,并附加在数据之后 5、将所有数据发送给对方解密过程 1、先使用私钥解密加密的对称密钥 2、用对称密钥解密…

    2017-04-18
  • Python修饰器的函数式编程

    Python的修饰器的英文名叫Decorator,当你看到这个英文名的时候,你可能会把其跟Design Pattern里的Decorator搞混了,其实这是完全不同的两个东西。虽然好像,他们要干的事都很相似——都是想要对一个已有的模块做一些“修饰工作”,所谓修饰工作就是想给现有的模块加上一些小装饰(一些小功能,这些小功能可能好多模块都会用到),但又不让这个小…

    Linux干货 2016-08-15
  • http协议

    ##socket套接字– 套接字,进程间通信IPC的一种实现,允许位于不同主机(或同一主机)上不同进程之间进行通信和数据交换。– socketAPI:封装了内核中所提供的socket通信相关的系统调用– socketDomain:根据其所使用的地址– AF_INET:Address Family,Ipv4&#8…

    Linux干货 2017-12-06
  • shell脚本编程

    一、编程基础: shell脚本是包含一些命令或声明,并符合一定格式的文本文件 shell脚本的用途有: 自动化常用命令 执行系统管理和故障排除 创建简单的应用程序 处理文本或文件 1)     第一步:使用文本编辑器来创建文本文件 script.sh 并编写内容 格式要求:首行shebang &nb…

    Linux干货 2016-08-15
  • 从Linux小白到大牛——与狼共舞的日子7

    马哥教育网络班21期+第7周课程练习 1、创建一个10G分区,并格式为ext4文件系统; (1) 要求其block大小为2048, 预留空间百分比为2, 卷标为MYDATA, 默认挂载属性包含acl; (2) 挂载至/data/mydata目录,要求挂载时禁止程序自动运行,且不更新文件的访问时间戳; [root@localhost ~]#&nbsp…

    Linux干货 2016-11-14
  • 马哥教育网络班20期+第3周课程练习

    1、列出当前系统上所有已经登录的用户的用户名,注意:同一个用户登录多次,则只显示一次即可。    w | grep "^root\>" |sort -u   2、取出最后登录到当前系统的用户的相关信息。    who |   3、取出当前系统上被用户当作…

    Linux干货 2016-06-26

评论列表(1条)

  • 马哥教育
    马哥教育 2016-07-29 09:39

    总结的很好,再接再厉!