Ⅰ linux 磁盘空间不足时,查找大文件
查找根目录下大于500M的文件:
-type [fileType] 文件类型是 fileType 的文件。
-size [fileLength] 文件大小是 fileLength 。
option 组合到一起之后,整条命令的意思就是“查找根目录下大于500M的文件”。
-h 输出文件系统分区使用情况,如下图所示:
-s 显示文件或真个目录的大小,如下图所示:
查看当前目录下所有文件大小:
Ⅱ Linux下查找大文件
Linux上查找最大文件的3种方法
第一种:ls
最简单的方法就是借助 ls 命令,因为 ls 命令本身输出是带文件大小信息的。
比如,我要列出 /data/log/ 目录中的20个最大文件,可以:
ls -lSh /data/log/ | head -20
第二种:find
find 本身就是查找命令,可以递归查找一个目录的子目录,所以用它是自然的。
比如,查找/etc目录下最大的5个文件:
find /etc -type f -printf “%s %p
” | sort -n | tail -5 | xargs ls -Slh
查找当前用户名下最大的10个文件
find $HOME -type f -printf “%s %p
” | sort -nr | head -10 | xargs ls -Slh
查询大于200M的文件
find / -type f -size +200M | xargs ls -Slh
查询100M和200M之间的文件
find / -type f -size +100M -size +200M | xargs ls -Slh
查询root目录下最大的5个文件
find /root -type f -exec ls -s {} ; | sort -n | tail -n5 | xargs ls -Slh
查询/目录下10天以前最大的5个文件
find / -type f -mtime +10 -printf “%s %p
” | sort -n | tail -5 | xargs ls -Slh
第三种:
命令可以查看磁桐早盘空间的使用情况,自然也可以用来查看磁盘上占用空间较多的文件和文件夹。
查找/root下5个最大的文件
-ah /root | sort -nr | head -n5
查找当前目录下最大的5个目录
-ah | sort -nr | head -n5
查找根目录下最大目录/文件(包括子文件夹)
-Sh / | sort -rh | head -n10
只看大小在 GB 范围内的所有文件
-ah / | grep “[0-9]G”
涉及到的命令参数:
find:
-exec<执行指令>:假设find指令的回传值为True,就执行该指令;
-mtime n 查找系统中最后n天被改变文件数据的文件 +大于 -小于
-type 查找某一类型的文件
b -块设备文件;
c -字符设备文件;
d -目录;
p -管道文件;
f -普通文件;
l -符号链接文件;
s -socket文件;
-printf<输出格式>:假设find指令的回传值为拍穗Ture,就将文件或目录名称列出到标准输出。袭轮卜格式可以自行指定;
sort:
-n 依照数值的大小排序;
-r 以相反的顺序来排序;
xargs:传递参数
ls -Slh
-Sl 从大到小显示详情
-Slr 从小到大显示详情
-h humans 以人类易读的方式显示(正常情况下显示为bit,加上-h后 显示的为KB MB GB TB等)
:
-a 显示所有目录或文件的大小
-h 以K,M,G为单位,提高信息可读性
-S 显示目录的大小,但不含子目录大小
Ⅲ 怎么样查看linux下占用空间最大的文件
主要使用find和命令来实现。
1、使用find命令找到大于指定大小的文件:
a.下例中查找大于10G的文件
[root@localhost data]# find / -type f -size +10G
将输出:
/usr/local/apache2/logs/access_log
b.通过命令查看此文件的大小:
[root@localhost data]# -h /usr/local/apache2/logs/access_log
24G /usr/local/apache2/logs/access_log
c.重复执行find命令来查找大文件,例如:find / -type f -size +5G 找到大于5G的文件。 find / -type f -size +1G 找到大于1G的文件
2、可以递归使用 --max-depth=1
Ⅳ linux下的一个超大日志文件有18G,用什么工具能打开查看里面的内容呀
cat,将内容一次性展现。18G的文件,估计展现后滚屏都得滚动几分钟,你只能看到最后一屏;
less,将内容分屏展现。用空格或pagedown翻页,用pageup回滚到上一屏;
more,类似less,但只能向下翻屏,不能向上,看过的就没法再回滚。
grep,过滤关键字,查询你关心的包含关键字的行,可配合管道符加more或less
你还可以用上述命令加管道符加上sed命令获取更详细的内容。
Ⅳ Linux下查找和删除指定大小的文件
LINUX删除大于/小于固定大小的文件等
删除目录下大小为0的文件 find./ -name"*"-type f -size 0c |xargs-n1rm-f
删除当前目录下面所有 test 文件夹下面的文件 find./ -name"test"-type d -execrm-rf {} ;
删除文件夹下面的所有的.py文件 find./ -name'.py'-execrm-rf {} ;
显示当前路径下,大于50M的文件 find./ -size +50M
删除当前路径下,大于50M的文件 find./ -size +50M -execrm{} \;
参考: https://www.cnblogs.com/yuanmingzhou/p/11082966.html
Ⅵ linux下按文件名和文件内容查找文件
在当前目录下,查找所有内容包含‘abc'的文件
find . -type f | xargs grep -l 'abc'
或
find . -type f -exec grep -l 'abc' {} ;
linux查找文件命令find
根据部分文件名查找方法:
这个方法和在WINDOWS中查找已知的文件名方法是一样的。不过在Linux中根据部分文件名查找文件的方法要比在WINDOWS中的同类查找方法要强大得多。
例如我们知道某个文件包含有srm这3个字母,那么要找到系统中所有包含有这3个字母的文件是可以实现的,输入:
find /etc -name '*srm*'
这个命令表明了Linux系统将在/etc整个目录中查找所有的包含有srm这3个字母的文件,比如 absrmyz, tibc.srm等等符合条件的文件都能显示出来。如果你还知道这个文件是由srm 这3个字母打头的,那么我们还可以省略最前面的星号,命令如下:
find/etc -name 'srm*'
这是只有像srmyz 这样的文件才被查找出来,象absrmyz或者 absrm这样的文件都不符合要求,不被显示,这样查找文件的效率和可靠性就大大增强了。
Ⅶ linux grep查找文件内容
Linux查找文件内容的常用命令方法。
1、从文件内容查找匹配指定字符串的行:
$ grep "被查找的字符串" 文件名
例子:在当前目录里第一级文件夹中寻找包含指定字符串的.in文件
grep "thermcontact" */*.in
2、从文件内容查找与正则表达式匹配的行:
$ grep –e “正则表达式” 文件名
3、查找时不区分大小写:
$ grep –i "被查找的字符串" 文件名
4、查找匹配的行数:
$ grep -c "被查找的字符串" 文件名
5、从文件内容查找不匹配指定字符串的行:
$ grep –v "被查找的字符串" 文件名
6、从根目录开始查找所有扩展名为.log的文本文件,并找出包含”ERROR”的行
find / -type f -name "*.log" | xargs grep "ERROR"
例子:从当前目录开始查找所有扩展名为.in的文本文件,并找出包含”thermcontact”的行
find . -name "*.in" | xargs grep "thermcontact"
Ⅷ linux查找大于1g的文件
find ./ -type f -size +1G 具体可以看看《linux就该这么学》