1、统计文件夹中文件数目
ls -l | wc -l #统计当前文件夹中文件数量(包括子文件夹和文件)
ls -l | grep '^-' | wc -l #统计当前文件夹中文件数量(只包括文件)
ls -l | grep '^d' | wc -l #统计当前文件夹下子文件夹数量
ls -lR | grep '^-' | wc -l #统计当前文件夹下文件数量(包括子文件夹下的文件)
ls -lR | grep '^d' | wc -l #统计当前文件夹下文件夹数量(包括子文件夹下的文件夹)
ls -lR | wc -l #统计当前文件夹中文件数量(包括子文件夹下的文件夹和文件)
其实命令很简单,分解看下,第一步ls
,-l
选项是列出详细信息,-R
选项是递归;然后第二步grep
正则表达式,将第一步的结果通过管道|
作为第二步的输入,然后,通过grep
条件筛选符合条件的;第三步,wc
统计数量。
2、快速查找文件
Linux下查找文件的命令及含义有:
命令 | 含义 |
---|---|
find | 根据文件的属性进行查找,如文件名,文件大小,所有者,所属组,是否为空,访问时间,修改时间等。 |
grep | 根据文件的内容进行查找,会对文件的每一行按照给定的模式(patter)进行匹配查找。 |
which | 查看可执行文件的位置,只有设置了环境变量的程序才可以用 |
whereis | 寻找特定文件,只能用于查找二进制文件、源代码文件和man手册页 |
locate | 配合数据库查看文件位置 ,详情:locate -h 查看帮助信息 |
经常使用到的 find命令 使用方法为:
find 命令的基本格式为:
find path expression
按照文件名查找
find / -name httpd.conf #在根目录下查找文件httpd.conf,表示在整个硬盘查找
find . -name 'srm*' #表示当前目录下查找文件名开头是字符串‘srm’的文件
按照文件特征查找
find / -amin -10 # 查找在系统中最后10分钟访问的文件(access time)
find / -atime -2 # 查找在系统中最后48小时访问的文件
find / -empty # 查找在系统中为空的文件或者文件夹
find / -group cat # 查找在系统中属于 group为cat的文件
find / -mmin -5 # 查找在系统中最后5分钟里修改过的文件(modify time)
find / -mtime -1 #查找在系统中最后24小时里修改过的文件
find / -user fred #查找在系统中属于fred这个用户的文件
find / -size +10000c #查找出大于10000000字节的文件(c:字节,w:双字,k:KB,M:MB,G:GB)
find / -size -1000k #查找出小于1000KB的文件
使用混合查找方式查找文件
参数有:!、-and(-a)、-or(-o)
find /tmp -size +10000c -and -mtime +2 #在/tmp目录下查找大于10000字节并在最后2分钟内修改的文件
find / -user fred -or -user george #在/目录下查找用户是fred或者george的文件文件
find /tmp ! -user panda #在/tmp目录中查找所有不属于panda用户的文件
3、查看内存使用情况
df -h # 查看系统整体空间剩余情况,将系统内所有的文件系统列出来!
du -sh * # 查看当前路径下所有文件的内存占用情况
free -m # 以MB为单位显示内存使用情况。
- df命令用于显示目前在Linux系统上的文件系统的磁盘使用情况统计,显示指定磁盘文件的可用空间。默认显示单位为KB。可以利用该命令来获取硬盘被占用了多少空间,目前还剩下多少空间等信息。
- du命令是对文件和目录磁盘使用的空间的查看。
- free命令是一个显示系统中空闲和已用内存大小的工具。free指令会显示内存的使用情况,包括实体内存,虚拟的交换文件内存,共享内存区段,以及系统核心使用的缓冲区等。