ubuntu 强制删除文件 ubuntu删除目录下所有文件
linux下使用通配符批量删除文件
一、cd命令进入这个linux文件夹目录。
二、打:
find.-type f-name*.log-mtime+x-exec rm-fv{}\;
命令作用:在当前目录下查找x天前的后缀为log的文件并且删除。
例:
find.-type f-name*.log-mtime+300-exec rm-fv{}\;
查找300天前的后缀名为log的文件并且删除。
命令详细解释:
.在当前目录下查找,如果要全盘查找的话,可以把.换成/,这样前面的cd命令就不需要了。
-type f查找的是普通文件,而不是文件夹
-name*.log查找后缀为log的文件
-mtime+x查找x天以前的文件,所以需要把这个x换成你自己需要查找的天数,比如30.你要删除20090808以前的,就需要计算一下,它距离现在多少天。
-exec rm-fv{}\;把查找的文件强制删除
如果权限不足,请以root身份运行命令。
如果是ubuntu,前面可以加sudo即可。
ubuntu如何以删除文件夹
1,输入密码能够删除
2,另外拿nautilusroot权限,用文件夹窗口删除 sudo nautilus,或者sudo gnome-open~/desktop
3,其实推荐pcmanfm文件夹管理软件,比自带要用,速度快,且标签便,工具菜单栏root打
4,m后面必须跟一个文件名,如果文件不存在,会提示文件不存在。(也可以-f不提示信息)。(这里test.text只是表明他是文件,其实只要 rm test就可以了)。
5,在ubuntu里面删除文件夹必须带-r因为删除文件夹和删除文件不同,删除文件夹还要删除子文件,子文件夹。
在Linux系统中批量删除多个文件的方法总结
当我们在linux系统中要删除数万或者数十万甚至数百万的文件时使用rm-rf*就不太好用,因为要等待很长一段时间。在这种情况之下我们可以使用linux系统命令rsync来巧妙的处理。rsync实际上用的是替换原理,处理数十万个文件也是秒删。
1. rsync安装,有些系统默认安装有该命令
ubuntu系统:
代码如下:
sudo apt-get install rsync
fedora系统:
代码如下:
sudo yum install rsync
其他的可以源码安装,到下面的网站下载
2. rsync提供了一些跟删除有关的参数
rsync--help| grep delete
--del an alias for--delete-during
--delete delete extraneous files from destination dirs
--delete-before receiver deletes before transfer, not during
--delete-during receiver deletes during transfer(default)
--delete-delay find deletions during, delete after
--delete-after receiver deletes after transfer, not during
--delete-excluded also delete excluded files from destination dirs
--ignore-errors delete even if there are I/O errors
--max-delete=NUM don't delete more than NUM files
其中--delete-before接收者在传输之前进行删除操作
3.示例
清空目录或文件,如下:
1、先建立一个空目录
代码如下:
mkdir/data/blank
2、用rsync删除目标目录
代码如下:
rsync--delete-before-d-a-H-v--progress--stats/data/blank//var/edatacache/
或者
代码如下:
rsync--delete-before-d/data/blank//var/edatacache/
这样/var/edatacache目录就被快速的清空了。
选项说明:
–delete-before接收者在传输之前进行删除操作
–progress在传输时显示传输过程
-a归档模式,表示以递归方式传输文件,并保持所有文件属性
-H保持硬连接的文件
-v详细输出模式
–stats给出某些文件的传输状态
-d transfer directories without recursing
删除文件夹
如果大量小文件都集中在几个目录中,那么这个方法就有用了。
代码如下:
rm-f/var/log/httpd/access.log
将会强制删除/var/log/httpd/access.log这个文件
-r就是向下递归,不管有多少级目录,一并删除
-f就是直接强行删除,不作任何提示的意思
-i进行交互式删除。
提示:使用rm命令要小心。因为一旦文件被删除,它是不能被恢复的。了防止这种情况的发生,可以使用i选项来逐个确认要删除的文件。如果用户输入y,文件将被删除。如果输入任何其他东西,文件则不会删除。
使用这个rm-rf删除文件的时候一定要格外小心,linux没有回收站的。
rm-r目录名:
将子目录及子目录中所有档案删除
代码如下:
[root@localhost test]# ls-l
总计 24drwxr-xr-x 7 root root 4096 10-25 18:07 scf
drwxr-xr-x 2 root root 4096 10-26 14:51 test1
drwxr-xr-x 3 root root 4096 10-25 17:44 test2
drwxrwxrwx 2 root root 4096 10-25 17:46 test3
drwxr-xr-x 2 root root 4096 10-25 17:56 test4
drwxr-xr-x 3 root root 4096 10-25 17:56 test5
代码如下:
[root@localhost test]# rm-r test1
rm:是否进入目录“test1”? y
rm:是否删除一般文件“test1/log3.log”? y
rm:是否删除目录“test1”? y
代码如下:
[root@localhost test]# ls-l
总计 20drwxr-xr-x 7 root root 4096 10-25 18:07 scf
drwxr-xr-x 3 root root 4096 10-25 17:44 test2
drwxrwxrwx 2 root root 4096 10-25 17:46 test3
drwxr-xr-x 2 root root 4096 10-25 17:56 test4
drwxr-xr-x 3 root root 4096 10-25 17:56 test5
[root@localhost test]#
rm-rf目录名:
把子目录及子目录中所有档案删除,并且不用一一确认
代码如下:
[root@localhost test]# rm-rf test2
[root@localhost test]# ls-l
总计 16drwxr-xr-x 7 root root 4096 10-25 18:07 scf
drwxrwxrwx 2 root root 4096 10-25 17:46 test3
drwxr-xr-x 2 root root 4096 10-25 17:56 test4
drwxr-xr-x 3 root root 4096 10-25 17:56 test5
[root@localhost test]#