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
下一篇 2016-07-29

相关推荐

  • N26-博客作业-week15

    1、总结sed和awk的详细用法 sed: 语法结构 sed [OPTION]…’script’ [input-file]…[action] -r:支持扩展正则表达式 -n:不输出模式空间中的内容至屏幕 -e script1 -e script2 -e script3:指定多脚本运行 -f /path/to/script_file:从指定的文件中读取…

    Linux干货 2017-07-14
  • zabbix报警信息提取

    zabbix报警信息提取     在日常的监控中,我们除了日常的zabbix操作外,我们有的时候还涉及到与其他公司进行数据对接。由于别的公司的数据对接很多时候并不是按照zabbix的数据结构(尤其是大型厂家,或是专业监控厂家,并不会直接使用zabbix,多数是自己开发或是对其他监控软件进行二次开发之类),在这种需求基础…

    Linux干货 2015-12-19
  • bash脚本编程

    1、写一个脚本,判断当前系统上所有用户的shell是否为可登录shell;分别统计这两类用户的个数;通过字符串比较来实现; #!/bin/bash declare -i loginSum=0; declare -i nologinSum=0; for x in `cat /etc/passwd|cut -d: -f 7` do if [ “/sb…

    Linux干货 2017-10-31
  • CentOS6.7上编译安装Apache2.2和Apache2.4

    centos6.7上如何编译安装Apache2.2和Apache2.4

    Linux干货 2016-05-29
  • 第六周作业

    一、Vim编辑器练习: 用Vim编辑器做下面的练习,我的Linux系统(CentOS 6.9)安装了精简版系统,没有Vim编辑器。 a、设置Yum源为网易开源镜像站。 b、选择对应“镜像名”,到对应的“CentOS使用说明”里面查看内容 c、看着CentOS说明操作就可以了 d、使用说明 首先备份/etc/yum.repos.d/CentOS-Base.re…

    Linux干货 2017-08-22
  • find命令详解

    find命令详解 实时查找工具,通过遍历指定起始路径下文件系统层级结构完成文件查找; 一、工作特性: 查找速度略慢; 精确查找,只查找文件路径的基名而非整个路径; 实时查找; 可能只搜索用户具备读取和执行权限的目录 二、 用法: find [查找起始路径] [OPTIONS] [查找条件] [处理动作] 查找起始路径:指定具体搜索目标起始路径;默认为当前目录…

    Linux干货 2017-03-19

评论列表(1条)

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

    总结的很好,再接再厉!