Linux 入门(二)

又一个周的时间过去了,觉得时间过的好快的呢,大概是因为沉迷于学习吧(害羞脸),在这一周里学习了不少东西呢,下面就来总结一下吧

(1)    cp 复制

如果只是单纯的敲cp复制文件而不加任何选项的时候,如果目的目录文件已经存在,就会直接覆盖,而不会出现任何提示信息,而当在实际操作时,就算不加 –i选项,也会提示要不要覆盖文件Linux 入门(二)

原因是在系统中有定义好的别名,就算只输入cp,也相当于加了-i选项

Linux 入门(二)下面是关于cp复制时一些选项的解释

          -i 覆盖前提示

          -n 不覆盖

                  -r -R 递归 (不管是cp 还是ls.在执行命令的时只影响当前目录,而不会对当前目录的子目录产生影响,)

         -d 复制软链接属性 (软连接其实就是链接一个路径)

         -p
= –perserv=mode,owner,timestamp

         -a 包含-dr –perserv=all

 -f 当覆盖时,如目的文件的缺少写权限时,(而对文件所在目录有创建和删除文件的权限时)强制删除目的文件,并新建再填充内容。当有-n时,无效。当你对一个文件没有写权限时,但你对该文件所在目录有创建和删除文件的权限,就可以强制删除该文件,并新建一个文件

  当执行覆盖操作时,对文件inode号产生的影响:

 在执行cp命令时,其实就是对文件的写入,如果目的文件不存在,则会在给目的文件分配一个新的inode号。

   Linux 入门(二)

如果目的文件已经存在,则只会将文件的数据覆盖,不会再分配inodeLinux 入门(二)

2mv 移动

  从上图可以看出,系统定义的也有mv 的别名,在覆盖文件的时候,也会弹出提示信息Linux 入门(二)

 -f  覆盖时不提示,抵消-i的作用Linux 入门(二)

当执行mv操作时,文件的inode号的变化情况:

不跨分区时,不会对文件的inode号产生影响,如果移动去文件名发生改变,则相当于间接完成了改名的操作

Linux 入门(二)

当跨分区移动是,相当于同时执行了cprm操作,将文件原来所在分区的inode号释放,在目的文件所在分区分配一个新的inode号,然后将数据部分复制过去。

Linux 入门(二) 

(3)         rm 删除

-i 覆盖前提示(如前所示,就不赘述了)

       -f 不提示,强制覆盖,抵消-i的作用

-r 递归 (可以递归删除目的目录下的所有子目录)

如果删除某个目录的时候不加-f选项,如果该目录下还有子目录,将无法删除

Linux 入门(二)Linux 入门(二)

 Linux 入门(二)

执行rm操作时对文件inode号的影响:

删除一个文件的本质就是减少一个文件的硬链接数,当文件的硬链接数减少到0的时候,就会释放inode

Linux 入门(二)

删除一个硬链接时:

Linux 入门(二)

 

继续删除,当把最后一个删除时,硬链接数就会变为0,此时就会释放inode号,

Linux 入门(二)

此时如果新建一个文件,刚释放的inode号就会被重新占用Linux 入门(二)

 

好啦,由于能力和精力的限制,就写到这里了,欢迎批评指正

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

(0)
MelissaMelissa
上一篇 2017-07-22
下一篇 2017-07-22

相关推荐

  • Java中的CopyOnWrite容器

    Copy-On-Write简称COW,是一种用于程序设计中的优化策略。其基本思路是,从一开始大家都在共享同一个内容,当某个人想要修改这个内容的时候,才会真正把内容Copy出去形成一个新的内容然后再改,这是一种延时懒惰策略。从JDK1.5开始Java并发包里提供了两个使用CopyOnWrite机制实现的并发容器,它们是CopyOnWriteArrayList和…

    Linux干货 2016-08-15
  • Btrfs文件系统的管理

    BTRFS文件系统 核心特性 支持将多个底层物理设备组合成同一个设备使用,即多物理卷支持。btrfs可由多个底层物理卷组成:支持RAID,以连击“添加”、“移除”、“修改” 写时复制,在修改文件时,先将文件复制一份,然后在新文件上进行修改,最后将文件名的指针指向新文件,所以原文件还是存在的。 数据及元数据校验码:checksum 子卷:在一个卷上创建子卷,每…

    Linux干货 2016-07-16
  • 集中练习5-磁盘分区、文件系统挂载、RAID管理

    集中练习5-磁盘分区、文件系统挂载、RAID管理

    Linux干货 2017-10-27
  • Linux系统管理基础

        一、Linux系统初识             1、用户界面           &nbsp…

    Linux干货 2015-04-14
  • Linux系统认知

    前言 在认识Linux系统之前先介绍下计算机的组成构造及其功能: 1,简单来说计算机可以划分为软件系统和硬件系统: (1)软件系统自不必说就是各种不同的程序,协助用户更好地使用电脑。 (2)硬件系统指的是主机、显示器、鼠键等硬件设备。 2,按冯诺依曼体系可将计算机按逻辑构成分为: (1)CPU(运算器、控制器)。运算器是数据处理装置,用来完成对数据的算术运算…

    Linux干货 2016-09-20
  • iptables

    1.开启防火墙systemctl start firewalld2.清空所有的默认规则,定义自己的规则iptables -F 查看此时的iptablesiptables -nL Chain INPUT (policy ACCEPT)target prot opt source destination Chain FORWARD (policy ACCEPT)…

    Linux干货 2017-07-26