‘壹’ linux如何查看系统占用磁盘空间最大的文件及让文件按大小排序
df -hl 查看磁盘剩余空间 -sm 文件夹 返回该文件夹总M数 更多功能请查看: df --help --help -sh (这个目录的名字)是查这个目录的大小 使用命令可以查看目录,例如查看/home/kuuyee目录占用磁盘空间大小可以使用下面的命令: # /home/kuuyee -sh 我的home目录下有上百个构建项目,一个一个的差看目录占用情况太麻烦了用命令: # /home --max-depth=1 -h 这样的话就吧所有的子目录的磁盘占用情况都列出来了!这里的--max-depth参数代表着要列出目录的深度,如果要列出两级目录就设置为2,以此类推。 如果想吧结果输出到文件里可以这样:# /home --max-depth=1 -h > disk_status.txt 用df -h 查每个根下面的目录的分区大小 就可以知道了 用法: [选项]… [文件]… 或: [选项]… –files0-from=F 总结每个<文件>的磁盘用量,目录则取总用量。 df命令是linux系统以磁盘分区为单位查看文件系统,可以加上参数查看磁盘剩余空间信息,命令格式: df -hl 显示格式为: 文件系统 容量 已用 可用 已用% 挂载点 FilesystemSize Used Avail Use% Mounted on /dev/hda2 45G 19G 24G 44% / /dev/hda1 494M 19M 450M 4% /boot /dev/hda6 4.9G 2.2G 2.5G 47% /home /dev/hda5 9.7G 2.9G 6.4G 31% /opt none 1009M 0 1009M 0% /dev/shm /dev/hda3 9.7G 7.2G 2.1G 78% /usr/local /dev/hdb2 75G 75G 0 100% / /dev/hdb2 75G 75G 0 100% / 以上面的输出为例,表示的意思为: HD硬盘接口的第二个硬盘(b),第二个分区(2),容量是75G,用了75G,可用是0,因此利用率是100%, 被挂载到根分区目录上(/)。 例子 1)查看文件大小 查看当前文件夹下所有文件大小(包括子文件夹) -sh # -h 15M ./package 16K ./.fontconfig 4.0K ./.cache 5.1M ./.rpmdb 20M . 查看指定文件夹下所有文件大小(包括子文件夹) # -h ftp 3.8G ftp/sanya/doc 3.8G ftp/sanya 4.0K ftp/testftp/doc 1.4M ftp/testftp 875M ftp/platform/doc/002-录像 27M ftp/platform/doc/001-PDF 5.2M ftp/platform/doc/BBFlash 1.2G ftp/platform/doc/003-录音 2.1G ftp/platform/doc 2.1G ftp/platform 4.0K ftp/pmo/doc 20K ftp/pmo 36M ftp/uf/doc/innovate-201207 36M ftp/uf/doc 36M ftp/uf 446M ftp/code/doc 446M ftp/code 6.3G ftp 查看指定文件大小 # -h ./package/compat-libstdc++-33-3.2.3-69.el6.x86_64.rpm 184K ./package/compat-libstdc++-33-3.2.3-69.el6.x86_64.rpm 查看指定文件夹大小 # -hs ftp 6.3G ftp 统计总数大小 -sh xmldb/ -sm * sort -n //统计当前目录大小 并安大小 排序 -sk * sort -n -sk * grep guojf //看一个人的大小 -m cut -d "/" -f 2 //看第二个/ 字符前的文字 查看此文件夹有多少文件 /*/*/* 有多少文件 xmldb/ xmldb/*/*/* wc -l 40752 解释: wc [-lmw] 参数说明: -l :多少行 -m:多少字符 -w:多少字 参数含义如下: -s 对每个Names参数只给出占用的数据块总数。 -a 递归地显示指定目录中各文件及子孙目录中各文件占用的数据块数。若既不指定-s,也不指定-a,则只显示Names中的每一个目录及其中的各子目录所占的磁盘块数。 -b 以字节为单位列出磁盘空间使用情况(系统缺省以 k 字节为单位)。 -k 以1024字节为单位列出磁盘空间使用情况。 -c 最后再加上一个总计(系统缺省设置)。 -l 计算所有的文件大小。
‘贰’ Linux如何监控目录下的文件情况,一旦有新文件就以硬链接的方式复制到其他目录
#! /bin/bash
$FILE_LIST=$(find . -type f -cmin -5 -maxdepth 1)
for file in ${FILE_LIST} ;do
ln -f ${file} ~/tmp/${file}
done
##其中find命令是核心
##-type f表示只查找普通文件
##-cmin -5表示只查找5分钟之内创建的文件
##-maxdepth 1表示查找的目录深度,1表示只查找当前目录,如果不指定-maxdepth将递归查找
##ln -f ${file} ~/tmp/${file}是将查找到的文件硬链接到~/tmp目录
##你可以根据自己的需要再做相应的修改
‘叁’ LINUX下如何查看一个文件夹下所有文件的总大小
工具/原料:
linux
CRT
1.用CRT软件连接一台Linux系统。
2.选择一个含有子文件夹的文件夹
。以TEST文件夹为例。
3.输入命令
ll
,查看文件夹中有哪些子文件夹。
4.输入
-h
--max-depth=1
。查看文件夹大小。
5.这样就可以查看到该文件夹下,深度为1的所有文件夹及文件的占用空间了。
‘肆’ linux 显示指定文件大小
1、最简单的查看方法可以使用ls -ll、ls-lh命令进行查看,当使用ls -ll,会显示成字节大小,而ls- lh会以KB、MB等为单位进行显示,这样比较直观一些。
2、通过命令 -h –max-depth=1 *,可以查看当前目录下各文件、文件夹的大小,这个比较实用。
3、查询当前目录总大小可以使用 -sh,其中s代表统计汇总的意思,即只输出一个总和大小。
4、同样,通过命令 -h –max-depth=0 *,可以只显示直接子目录文件及文件夹大小统计值。
5、如果只想查看指定目录的总大小,可以使用 -sh 目录名称。
6、对于指定文件夹也可以指定显示层次深度,如 -h --max-depth=0 software/及 -h --max-depth=1 software/
‘伍’ Linux查看文件大小命令
[-abcDhHklmsSx] [-L <符号连接>][-X <文件>][--block-size][--exclude=<目录或文件>] [--max-depth=<目录层数>][--help][--version][目录或文件]
常用参数:
-a或-all 为每个指定文件显示磁盘使用情况,或者为目录中每个文件显示各自磁盘使用情况。
-b或-bytes 显示目录或文件大小时,以byte为单位。
-c或–total 除了显示目录或文件的大小外,同时也显示所有目录或文件的总和。
-D或–dereference-args 显示指定符号连接的源文件大小。
-h或–human-readable 以K,M,G为单位,提高信息的可读性。
-H或–si 与-h参数相同,但是K,M,G是以1000为换算单位,而不是以1024为换算单位。
-k或–kilobytes 以1024 bytes为单位。
-l或–count-links 重复计算硬件连接的文件。
-L<符号连接>或–dereference<符号连接> 显示选项中所指定符号连接的源文件大小。
-m或–megabytes 以1MB为单位。
-s或–summarize 仅显示总计,即当前目录的大小。
-S或–separate-dirs 显示每个目录的大小时,并不含其子目录的大小。
-x或–one-file-xystem 以一开始处理时的文件系统为准,若遇上其它不同的文件系统目录则略过。
-X<文件>或–exclude-from=<文件> 在<文件>指定目录或文件。
–exclude=<目录或文件> 略过指定的目录或文件。
–max-depth=<目录层数> 超过指定层数的目录后,予以忽略。
–help 显示帮助。
–version 显示版本信息。
1> 要显示一个目录树及其每个子树的磁盘使用情况
/home/linux
这在/home/linux目录及其每个子目录中显示了磁盘块数。
2> 要通过以1024字节为单位显示一个目录树及其每个子树的磁盘使用情况
-k /home/linux
这在/home/linux目录及其每个子目录中显示了 1024 字节磁盘块数。
3> 以MB为单位显示一个目录树及其每个子树的磁盘使用情况
-m /home/linux
这在/home/linux目录及其每个子目录中显示了 MB 磁盘块数。
4> 以GB为单位显示一个目录树及其每个子树的磁盘使用情况
-g /home/linux
这在/home/linux目录及其每个子目录中显示了 GB 磁盘块数。
5>查看当前目录下所有目录以及子目录的大小:
-h .
“.”代表当前目录下。也可以换成一个明确的路径
-h表示用K、M、G的人性化形式显示
6>查看当前目录下user目录的大小,并不想看其他目录以及其子目录:
-sh user
-s表示总结的意思,即只列出一个总结的值
-h --max-depth=0 user
--max-depth=n表示只深入到第n层目录,此处设置为0,即表示不深入到子目录。
7>列出user目录及其子目录下所有目录和文件的大小:
-ah user
-a表示包括目录和文件
8>列出当前目录中的目录名不包括xyz字符串的目录的大小:
-h --exclude='*xyz*'
9>想在一个屏幕下列出更多的关于user目录及子目录大小的信息:
-0h user
-0(杠零)表示每列出一个目录的信息,不换行,而是直接输出下一个目录的信息。
10>只显示一个目录树的全部磁盘使用情况
-s /home/linux
11>查看各文件夹大小: -h --max-depth=1
‘陆’ Linux中用rm -f删除大量文件出现参数过长的错误 解决办法是用find /tmp/temp -
maxdepth参数是管用的:
find /tmp/temp -maxdepth 1 -type f -exec rm -f {} \;
‘柒’ linux中怎样查看文件夹的大小
linux查看一个文件夹的大小的命令为: --max-depth 1 -lh 该文件夹的完整路径 例,查询/var文件夹的大小: --max-depth 1 -lh /var命令解释: 递归查询该路径下所有文件的大小(若不加任何参数,则显示文件夹内的所有文件,包括文件夹内子文件夹的内容)。 参数 --max-depth 1 -lh 设置递归深度为1,及不查询子文件夹。因而使用此参数只显示该文件夹的大小,不显示其中子文件夹的大小。 注意: 视操作系统版本不同,命令可能为: --max-depth 1 -lh 该文件夹的完整路径或: --max-depth=1 -lh 该文件夹的完整路径
‘捌’ linuxfind查找大于多少天的文件,并删除之
linux查找超过一定时间的文件,并批量删除
1、find . -maxdepth 4 -name "*-*" -mtime 3
-maxdepth的值决定是否对下面的子目录进行递归查找
-mtime 3表示查找3天内的,-mtime +3表示查找超过3天的,也就是查找3天前的文件
2、find . -maxdepth 4 -name "*-*" -mtime 3 | sudo xargs rm -rf
-----------------------------------------------------------------------------------------------------------------------------
find ./ -maxdepth 4 -mtime +3 -a -mtime -20 -type f
-- 如果将xmaxdepth放置于-mtime之后,将会抛出这个错误
find: warning: you have specified the -maxdepth option after a non-option argument -mtime, but options are not positional (-maxdepth affects tests specified before it as well as those specified after it). Please specify options before other arguments.
-----------------------------------------------------------------------------------------------------------------------------
-mtime 0 表示文件修改时间距离当前为0天的文件,即距离当前时间不到1天(24小时)以内的文件。
-mtime 1 表示文件修改时间距离当前为1天的文件,即距离当前时间1天(24小时-48小时)的文件。
-mtime+1 表示文件修改时间为大于1天的文件,即距离当前时间2天(48小时)之外的文件
-mtime -1 表示文件修改时间为小于1天的文件,即距离当前时间1天(24小时)之内的文件
-----------------------------------------------------------------------------------------------------------------------------
-maxdepth 参数详解
-maxdepth选项的作用就是限制find命令在目录中按照递减方式查找文件的时候搜索文件超过某个级别或者搜索过多的目录,这样导致查找速度变慢,查找花费的时间过多。例如,我们要在当前(.)目录技巧子目录中查找一个名叫fred的文件,我们可以使用如下命令
find . -maxdepth 2 -name fred
假如这个fred文件在./sub1/fred目录中,那么这个命令就会直接定位这个文件,查找很容易成功。假如,这个文件在./sub1/sub2/fred目录中,那么这个命令就无法查找到。因为前面已经给find命令在目录中最大的查询目录级别为2,只能查找2层目录下的文件。这样做的目的就是为了让find命令更加>
精确的定位文件,如果你已经知道了某个文件大概所在的文件目录级数,那么加入-maxdepth n 就很快的能在指定目录中查找成功。
也即是-maxdepth 参数指定递归查找级别,如果-maxdepth 2 则查找当前目录递归查找2层,-maxdepth 4 则查找当前目录递归查找4层。