Linux-查看文件个数

转自: https://blog.csdn.net/u014540717/article/details/53319433

 

有时候需要看文件夹下有多少文件,那么就需要用到以下指令

ls -l | grep -c '^-'


这个grep是啥意思呢?我们man一下

man grep


会看到以下描述:

SYNOPSIS
       grep [OPTIONS] PATTERN [FILE...]
       grep [OPTIONS] [-e PATTERN | -f FILE] [FILE...]
DESCRIPTION
       grep  searches  the  named  input  FILEs (or standard input if no files are
       named, or if a single hyphen-minus (-) is given as file name) for lines
       containing a match to the given PATTERN.  By default, grep prints the matching lines.


是说白了就是打印出和在FILE中寻找和PATTERN一样的关键字,然后将这一行打印出来,其他的OPTIONS参数请自行用man命令查看,-c 就是不直接打印,而是统计行数,那么"^-" 这个是什么意思呢?

Linux常见的文件类型有:普通文件、目录文件、字符设备文件和块设备文件、符号链接文件等,其中:
    1 普通文件的文件权限第一个字符为“-”
    2 目录文件的文件权限第一个字符为“d”
    3 字符设备文件的文件权限第一个字符为“c”;
    4 块设备文件的文件权限第一个字符为“b”
    5 符号链接文件的文件权限第一个字符为“s”


那我就明白了,其实就是统计普通文件的个数呗,同理可得~

# 统计目录的个数

ls -l | grep -c '^d'


我要想递归统计呢?那就把ls -l 换成ls -lR 就行了~~

(END)

你可能感兴趣的:(linux)