1. linux文件内容被清空能不能恢复
可以看看linux就该这么学,关于linux的技巧有很详实的介绍,会有很多好处。恢复被误删文件的方法:大多数Linux发行版都提供一个debugfs工具,可以用来对Ext2文件系统进行编辑操作。不过在使用这个工具之前,还有一些工作要做。首先以只读方式重新挂载被误删的文件所在分区。使用如下命令:(假设文件在/usr分区)mount –r –n –o remount /usr -r表示只读方式挂载;-n表示不写入/etc/mtab,如果是恢复/etc上的文件,就加上这个参数。如果系统说xxx partion busy,可以用fuser命令查看一下是哪些进程使用这个分区上的文件:fuser –v –m /usr如果没有什么重要的进程,用以下命令停掉它们:fuser -k –v –m /usr然后就可以重新挂载这些文件系统了。如果是把所有的文件统一安装在一个大的/分区当中,可以在boot提示符下用linux single进入单用户模式,尽量减少系统进程向硬盘写入数据的机会,要不干脆把硬盘挂在别的机器上。另外,恢复出来的数据不要写到/上面,避免破坏那些有用的数据。如果机器上有dos/windows,可以写到这些分区上面:mount –r –n /dev/hda1 /mnt/had然后就可以执行debugfs:(假设Linux在 /dev/hda5)#debugfs /dev/hda5就会出现debugfs提示符debugfs:使用lsdel命令可以列出很多被删除的文件的信息:word-WRAP: break-word" bgColor=#f3f3f3> debugfs:lsdeldebugfs: 2692 deleted inodes found.Inode Owner Mode Size Blocks Time deleted164821 0 100600 8192 1/ 1 Sun May 13 19:22:46 200136137 0 100644 4 1/ 1 Tue Apr 24 10:11:15 2001196829 0 100644 149500 38/ 38 Mon May 27 13:52:04 2001列出的文件有很多(这里找到2692个),第一字段是文件节点号,第二字段是文件所有者,第三字段是读写权限,接下来是文件大小,占用块数,删除时间。然后就可以根据文件大小和删除日期判断那些是我们需要的。比如我们要恢复节点是196829的文件:可以先看看文件数据状态: debugfs:stat <196829>Inode: 196829 Type: regular Mode: 0644 Flags: 0x0 Version: 1User: 0 Group: 0 Size: 149500File ACL: 0 Directory ACL: 0Links: 0 Blockcount: 38Fragment: Address: 0 Number: 0 Size: 0ctime: 0x31a9a574 — Mon May 27 13:52:04 2001atime: 0x31a21dd1 — Tue May 21 20:47:29 2001mtime: 0x313bf4d7 — Tue Mar 5 08:01:27 2001dtime: 0x31a9a574 — Mon May 27 13:52:04 2001BLOCKS:594810 594811 594814 594815 594816 594817TOTAL: 38然后就可以用mp指令恢复文件:debugfs:mp <196829> /mnt/hda/01.sav这样就把文件恢复出来了。退出debugfs:debugfs:quit另一种方法是手工编辑inode: debugfs:mi <196829>Mode [0100644]User ID [0]Group ID [0]Size [149500]Creation time [0x31a9a574]Modification time [0x31a9a574]Access time [0x31a21dd1]Deletion time [0x31a9a574] 0Link count [0] 1Block count [38]File flags [0x0]Reserved1 [0]File acl [0]Directory acl [0]Fragment address [0]Fragment number [0]Fragment size [0]Direct Block #0 [594810]Triple Indirect Block [0]使用mi指令后每次显示一行信息以供编辑,其它行可以直接按回车表示确认,把deletion time改成0(未删除),Link count改成1。改好后退出debugfs:debugfs:quit然后用fsck检查/dev/hda5fsck /dev/hda5程序会说找到丢失的数据块,放在lost+found里面。这个目录里的文件就是我们要的东东。
2. linux怎样删除文件及文件里边的内容
删除文件就把文件里面的内容删除了如果只是删除文件内容的话,可以这样echo > filename这样文件就清空了
3. Linux如何清空文件中的内容
1。用vi打开该文本,然后输入dG,就可以删掉了,再按:wq,保存2。rm删除文件,然后再重建一个3。输入echo "">文件名。也行
4. linux几种快速清空文件内容的方法
Linux清空文件内容的抄方法还是有很多的,这里举两种方法。
1、 通过重定向到 Null 来清空文件内容,如下图所示,之前t.c的为4.8K大小的文件,重定向后,大小为0。
5. 怎么批量删除linux文件内容
删除几个文件 rm 文件1 文件2删除文件夹下面所有文件 rm * -rf删除某些固定字母开头的文件 rm xxx* 删除一类文件 rm *.txt
6. linux下如何根据文件大小来清除文件内容
重定向吧~ 貌似Linux没有获取文件大小的函数吧,不太清楚system("ls -l ss.log > file");把文件的信息重定向到一个文件,然后读该文件, 解析第5个字符串就知道文件的大小了~ 超过100*1024*1024就system("rm ss.log");
7. linux中快速清空文件内容的几种方法
linux下快速删除大量文件假如你要在linux下删除大量文件,比如100万、万,像/var/spool/clientmqueue/的mail邮件,像/usr/local/nginx/proxy_temp的nginx缓存等,那么rm -rf *可能就不好使了。rsync提供了一些跟删除相关的参数 rsync –help grep delete –del an alias for –delete-ring –delete delete files that don't exist on the sending side –delete-before receiver deletes before transfer (default) –delete-ring receiver deletes ring transfer, not before –delete-after receiver deletes after transfer, not before –delete-excluded also delete excluded files on the receiving side –ignore-errors delete even if there are I/O errors –max-delete=NUM don't delete more than NUM files其中–delete-before 接收者在传输之前进行删除操作可以用来清空目录或文件,如下:1、先建立一个空目录mkdir /data/blank2、用rsync删除目标目录rsync –delete-before -d /data/blank/ /var/spool/clientmqueue/这样目标目录很快就被清空了又假如你有一些特别大的文件要删除,比如nohup.out这样的实时更新的文件,动辄都是几十个G上百G的,也可 以用rsync来清空大文件,而且效率比较高1、创建空文件touch /data/blank.txt2、用rsync清空文件rsync -a –delete-before –progress –stats /root/blank.txt /root/nohup.outbuilding file list …1 file to considerblank.txt 0 100% 0.00kB/s 0:00:00 (xfer#1, to-check=0/1)Number of files: 1Number of files transferred: 1Total file size: 0 bytesTotal transferred file size: 0 bytesLiteral data: 0 bytesMatched data: 0 bytesFile list size: 27File list generation time: 0.006 secondsFile list transfer time: 0.000 secondsTotal bytes sent: 73Total bytes received: 31 sent 73 bytes received 31 bytes 208.00 bytes/sectotal size is 0 speep is 0.00tips:当SRC和DEST文件性质不一致时将会报错当SRC和DEST性质都为文件【f】时,意思是清空文件内容而不是删除文件当SRC和DEST性质都为目录【d】时,意思是删除该目录下的所有文件,使其变为空目录最重要的是,它的处理速度相当快,处理几个G的文件也就是秒级的事最核心的内容是:rsync实际上用的就是替换原理作者 张慧
8. linux shell 清空指定文件夹下所有文件的内容。注意,是清空内容,而不是删除文件。
文件夹下的内容不就是文件吗?文件的内容才是内容。你所表达的意识是不是。。保留文件名,但是文件容量 要归 0 ?
9. linux中怎样删除一个文件的部分内容
vi xxx.txt 打开就能看到里面的内容。按 i 进入编辑模式,然后就可以输入内容了,也可以移动光标到你要删除内容的位置按删除键来删除内容。编辑完后可以按 Esc(键盘左上角) 进入命令模式。然后按 shift+ : 进入末行模式。在末行模式下输入wq 回车 就能保存并且退出vi了。
10. linux命令,清除一个文本文件的命令
rm是常用的命令,该命令的功能为删除一个目录中的一个或多个文件或目录,它也可以将某个目录及其下的所有文件及子目录均删除。对于链接文件,只是删除了链接,原有文件均保持不变。rm是一个危险的命令,使用的时候要特别当心,尤其对于新手,否则整个系统就会毁在这个命令(比如在/(根目录)下执行rm * -rf)。所以,我们在执行rm之前最好先确认一下在哪个目录,到底要删除什么东西,操作时保持高度清醒的头脑。1.命令格式:rm [选项] 文件… 2.命令功能:删除一个目录中的一个或多个文件或目录,如果没有使用- r选项,则rm不会删除目录。如果使用 rm 来删除文件,通常仍可以将该文件恢复原状。3.命令参数: -f, –force 忽略不存在的文件,从不给出提示。 -i, –interactive 进行交互式删除 -r, -R, –recursive 指示rm将参数中列出的全部目录和子目录均递归地删除。 -v, –verbose 详细显示进行的步骤 –help 显示此帮助信息并退出 –version 输出版本信息并退出4.命令实例:实例一:删除文件file,系统会先询问是否删除。 命令:rm 文件名输出:[[email protected] test1]# ll总计 4-rw-r–r– 1 root root 56 10-26 14:31 log.log[email protected] test1]# rm log.log rm:是否删除 一般文件 “log.log”? y[email protected] test1]# ll总计 0[[email protected] test1]#说明:输入rm log.log命令后,系统会询问是否删除,输入y后就会删除文件,不想删除则数据n。实例二:强行删除file,系统不再提示。 命令:rm -f log1.log输出:[[email protected] test1]# ll总计 4-rw-r–r– 1 root root 23 10-26 14:40 log1.log[[email protected] test1]# rm -f log1.log [[email protected] test1]# ll总计 0[[email protected] test1]#实例三:删除任何.log文件;删除前逐一询问确认 命令:rm -i *.log输出:[[email protected] test1]# ll总计 8-rw-r–r– 1 root root 11 10-26 14:45 log1.log-rw-r–r– 1 root root 24 10-26 14:45 log2.log[[email protected] test1]# rm -i *.logrm:是否删除 一般文件 “log1.log”? yrm:是否删除 一般文件 “log2.log”? y[[email protected] test1]# ll总计 0[[email protected] test1]#实例四:将 test1子目录及子目录中所有档案删除命令:rm -r test1输出:[[email protected] test]# ll总计 24drwxr-xr-x 7 root root 4096 10-25 18:07 scfdrwxr-xr-x 2 root root 4096 10-26 14:51 test1drwxr-xr-x 3 root root 4096 10-25 17:44 test2drwxrwxrwx 2 root root 4096 10-25 17:46 test3drwxr-xr-x 2 root root 4096 10-25 17:56 test4drwxr-xr-x 3 root root 4096 10-25 17:56 test5[[email protected] test]# rm -r test1rm:是否进入目录 “test1”? yrm:是否删除 一般文件 “test1/log3.log”? yrm:是否删除 目录 “test1”? y[[email protected] test]# ll总计 20drwxr-xr-x 7 root root 4096 10-25 18:07 scfdrwxr-xr-x 3 root root 4096 10-25 17:44 test2drwxrwxrwx 2 root root 4096 10-25 17:46 test3drwxr-xr-x 2 root root 4096 10-25 17:56 test4drwxr-xr-x 3 root root 4096 10-25 17:56 test5[[email protected] test]#实例五:rm -rf test2命令会将 test2 子目录及子目录中所有档案删除,并且不用一一确认命令:rm -rf test2 输出:[[email protected] test]# rm -rf test2[[email protected] test]# ll总计 16drwxr-xr-x 7 root root 4096 10-25 18:07 scfdrwxrwxrwx 2 root root 4096 10-25 17:46 test3drwxr-xr-x 2 root root 4096 10-25 17:56 test4drwxr-xr-x 3 root root 4096 10-25 17:56 test5[[email protected] test]#实例六:删除以 -f 开头的文件命令:rm — -f输出:[[email protected] test]# touch — -f[[email protected] test]# ls — -f-f[[email protected] test]# rm — -frm:是否删除 一般空文件 “-f”? y[[email protected] test]# ls — -fls: -f: 没有那个文件或目录[[email protected] test]#也可以使用下面的操作步骤:[[email protected] test]# touch ./-f[[email protected] test]# ls ./-f./-f[[email protected] test]# rm ./-frm:是否删除 一般空文件 “./-f”? y[[email protected] test]#实例七:自定义回收站功能命令:myrm(){ D=/tmp/$(date +%Y%m%d%H%M%S); mkdir -p $D; mv "[email protected]" $D && echo "moved to $D ok"; }输出:[[email protected] test]# myrm(){ D=/tmp/$(date +%Y%m%d%H%M%S); mkdir -p $D; mv "[email protected]" $D && echo "moved to $D ok"; }[[email protected] test]# alias rm='myrm'[[email protected] test]# touch 1.log 2.log 3.log[[email protected] test]# ll总计 16-rw-r–r– 1 root root 0 10-26 15:08 1.log-rw-r–r– 1 root root 0 10-26 15:08 2.log-rw-r–r– 1 root root 0 10-26 15:08 3.logdrwxr-xr-x 7 root root 4096 10-25 18:07 scfdrwxrwxrwx 2 root root 4096 10-25 17:46 test3drwxr-xr-x 2 root root 4096 10-25 17:56 test4drwxr-xr-x 3 root root 4096 10-25 17:56 test5[[email protected] test]# rm [123].logmoved to /tmp/20121026150901 ok[[email protected] test]# ll总计 16drwxr-xr-x 7 root root 4096 10-25 18:07 scfdrwxrwxrwx 2 root root 4096 10-25 17:46 test3drwxr-xr-x 2 root root 4096 10-25 17:56 test4drwxr-xr-x 3 root root 4096 10-25 17:56 test5[[email protected] test]# ls /tmp/20121026150901/1.log 2.log 3.log[[email protected] test]#说明:上面的操作过程模拟了回收站的效果,即删除文件的时候只是把文件放到一个临时目录中,这样在需要的时候还可以恢复过来。
未经允许不得转载:山九号 » 清空文件内容linux|linux怎样删除文件及文件里边的内容