linux删除、读取文件原理】的更多相关文章

linux删除文件原理 LINUX的文件名是存在父目录的block里面,并指向这个文件额inode节点,这个文件的inode节点再标记指向存放这个文件的block的数据块.我们删除一个文件,实际上并不是清楚inode节点和block的数据.只是在这个文件的父目录里面的block删除这个文件的名字,从而使这个文件名消失,并且无法指向这个文件的 inode节点,当没有文件名指向这个inode节点同时没有进程调用的时候,这个inode和下面的block是无主的.在磁盘检查或者有内容写入的时候会是否释放…
Linux删除乱码文件或者目录 有时在Linux下面解压一些zip或者rar文件后会产生乱码文件或者目录,这个时候使用rm不能成功删除,需要使用一些特别的方法 来进行删除,下面是我经常使用的两种方法. 方法一: 使用rm -rf 删除上一级目录,当然前提是需要备份你需要备份的数据. 一种思路: . 比如/home下文件夹内含有乱码的文件 . mkdir tmp . 将所有的文件首先移动到 mv * tmp/ .到tmp下 把所有有正常的显示字符的文件移动出来 cd tmp ; mv [a-zA-…
Linux上读取文件的方法: #!/bin/bash # This is a script for test exec CONFIG_FILE=$ #该脚本传一个文件名为参数 FILE_NO= echo $CONFIG_FILE exec < $CONFIG_FILE #将$CONFIG_FILE中的内容作为exec的标准输入 read FILE_NAME #读取内容到FILE_NAME中 ] #只要read命令在配置文件中发现还有记录可读,它就会在?变量中返回一个表示成功的退出状态码0 do…
参考 : http://www.lunar2013.com/2013/06/linux-%E8%AF%AF%E5%88%A0%E9%99%A4%E6%96%87%E4%BB%B6%E6%81%A2%E5%A4%8D.html Last login: Sun Jan 26 22:36:10 2014 from 10.10.10.5 root>/root#su - oracle oracle>/home/oracle$sqlplus / as sysdba SQL*Plus: Release 10…
要在linux下删除海量文件,比如有数十万个文件,此时常用的rm -rf * 就会等待时间很长.这时我们可以使用rsync快速删除大量文件. 1.建立一个空目录 mkdir -p /tmp/rsync_blank 2.确立需要清空的目标目录 /data/web/vip/htdocs/tuan 3.使用rsync同步删除(注意目录后面的"/"),整体效率会快一个数量级的样子. rsync --delete-before -a -H -v --progress --stats /tmp/r…
原理及普通文件的恢复 要想恢复误删除的文件,必须清楚数据在磁盘上究竟是如何存储的,以及如何定位并恢复数据.本文从数据恢复的角度,着重介绍了 ext2 文件系统中使用的一些基本概念和重要数据结构,并通过几个实例介绍了如何手工恢复已经删除的文件.最后针对 ext2 现有实现存在的大文件无法正常恢复的问题,通过修改内核中的实现,给出了一种解决方案. 内容 对于很多 Linux 的用户来说,可能有一个问题一直都非常头疼:对于那些不小心删除的数据来说,怎样才能恢复出来呢?大家知道,在 Windows 系统…
转自:https://www.cnblogs.com/xudong-bupt/p/3504442.html 本文:http://www.cnblogs.com/xudong-bupt/p/3504442.html Linux C  下面读取文件夹要用到结构体struct dirent,在头#include <dirent.h>中,如下: #include <dirent.h> struct dirent { long d_ino; /* inode number 索引节点号 */…
在Linux中有很多方法逐行读取一个文件的方法,其中最常用的就是下面的脚本里的方法,而且是效率最高,使用最多的方法.为了给大家一个直观的感受,我们将通过生成一个大的文件的方式来检验各种方法的执行效率. 方法1:while循环中执行效率最高,最常用的方法. 复制代码 代码如下: function while_read_LINE_bottm(){ While read LINE do echo $LINE done  < $FILENAME } 注释:我习惯把这种方式叫做read釜底抽薪,因为这种方…
当文件名为乱码的时候,无法通过键盘输入文件名,所以在终端下就不能直接利用rm,mv等命令管理文件了. 我们可以通过以下几种方法删除linux下的乱码文件.(文件名为乱码) l  方法1 我们知道每个文件都有一个i节点号,我们可以考虑通过i节点号来管理文件. 首先,我们要取得文件的i节点号.这个可以通过ls命令的-i选项获得. 第二步,使用find命令将文件名传递给rm命令. 例: l  方法2 使用cp.mv和rm *的组合间接实现删除所有的乱码文件. 首先,把其他的非乱码命名的文件拷贝到其他的…
linux删除当前目录及其子目录下的.svn文件,linux下删除全部的.svn文件 find . -name "*.svn" -type d -print -exec rm -rf {} \;…