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 15:22
下一篇 2017-07-22 16:35

相关推荐

  • 2016-08-18作业

    斐波那契数列 fibonacciSequenceFun.sh #!/bin/bash function fibonacci_sequence {   if [ $1 -eq 0 ]; then     echo 0      elif [ $1 -eq 1 ]; then    …

    Linux干货 2016-09-19
  • PHP SOCKET编程

    1. 预备知识        一直以来很少看到有多少人使用php的socket模块来做一些事情,大概大家都把它定位在脚本语言的范畴内吧,但是其实php的socket模块可以做很多事情,包括做ftplist,http post提交,smtp提交,组包并进行特殊报文的交互(如smpp协议),whois查询。这些都是比较常见…

    Linux干货 2015-04-10
  • 测试Markdown

    测试markdown是否可用

    Linux干货 2018-03-10
  • 运维挖坑埋坑之旅—-413 Request Entity Too Large

    原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。http://nolinux.blog.51cto.com/4824967/1575160        好久没写博文了,天天忙的喘不过来气。最近是该总结总结前段时间的工作了,顺便缓解下这两天的霉…

    Linux干货 2016-08-15
  • Linux系统程序包管理—rpm

     概述:      本章内容:软件的运行环境,软件包基础,rpm包管理,yum管理,定制yum仓库,编译安装 一、软件运行环境     1.□API:Application Programming Interface (应用程序开发接口)         &n…

    Linux干货 2016-09-01
  • 怎么删除邮件?

    linux邮件位置一般在/var/spool/mail/root下,如果想查看邮件,在屏幕上输入mail就可以查看了,输入之后会出现&符号,你想看哪一封邮件,直接在后面跟对应的数字就好了。 如果你感觉自己的邮件太多了,比较占内存,那就删了吧。 d 删除当前邮件,指针并下移。   d 3 删除编号为3 的邮件。   d1-100 删…

    2017-07-22