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)
上一篇 2016-07-29 09:28
下一篇 2016-07-29 09:48

相关推荐

  • Bash Shell之数组简介

    Bash Shell之数组简介   一、数组基本概念   数组是内存中的存储空间,连续的多个存储单元;bash中只支持一维数组,支持稀疏格式 ,参数个数没有限制。 二、数组基本语法格式   1、声明一个数组          declare…

    Linux干货 2015-05-11
  • iptables

    一、前言 什么是iptables?当我们启动iptables时,使用service命令可以启动iptables。但是并非使用service启动的iptables就能说明其是一个服务。Iptables是一个便以我们写规则的工具,真正起作用的是内核中的netfilter一个框架。Netfilter内置了5个hook函数,当一个数据包交由此机器时,经过这5个hoo…

    Linux干货 2015-10-27
  • 马哥教育网络班20期 第9周课程练习

    1、写一个脚本,判断当前系统上所有用户的shell是否为可登录shell(即用户的shell不是/sbin/nologin);分别这两类用户的个数;通过字符串比较来实现; #!/bin/bash #the purpose of program : # #08/11/2016  PATH=/bin:/sbin:…

    Linux干货 2016-08-15
  • N26-第一周博客作业

    一:计算机的组成及其功能  1.运算器(CPU) 对数据进行各种运算;  2.控制器(CPU) 用来控制整个计算机操作系统;  3.存储器 内存(RAM)存储程序和各种数据信息;  4.输入装置 (Input)下达指令,提供数据,常见的输入装置有鼠标,键盘等;  5.输出设备 (Output)输出数据加工后的…

    Linux干货 2016-12-31
  • linux入门

    linux入门 Centos中分root用户和普通用户,root为超级管理员,几乎具有所有的系统控制 刚进入linux系统,Ctrl+Alt+F[1-6]可以切换虚拟终端  (tty) 图形终端:CentOS 6: Ctrl + Alt + F7       CentOS 7:在哪个终端启动,即位于哪个虚拟终端 伪终端…

    Linux干货 2017-02-16

评论列表(1条)

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

    总结的很好,再接再厉!