📌  相关文章
📜  查找目录 linux 中的文件数 - Shell-Bash (1)

📅  最后修改于: 2023-12-03 15:10:45.985000             🧑  作者: Mango

查找目录 linux 中的文件数 - Shell-Bash

Shell-Bash 是一种运行在 Linux 操作系统中的命令解释器。它可以帮助开发者编写各种 Shell 脚本来完成大量的操作。

这里我们将学习如何使用 Shell-Bash 查找目录中的文件数。在日常的开发工作中,我们经常需要查找某个目录下所有的文件个数。以下是一个返回某个目录下文件总数的 Shell-Bash 脚本:

#!/bin/bash

# 首先判断有的参数是否正确
if [ $# -ne 1 ]; then
    echo "Usage: $0 directory"
    exit 1
fi

# 使用 find 命令查找指定目录下的文件,并通过管道符将结果传递给 wc 命令
# 包含 . 和 .. 目录
file_count=$(find $1 -type f | wc -l)
dir_count=$(find $1 -type d | wc -l)

# 输出结果
echo "目录 $1 中的文件个数为: $file_count"
echo "目录 $1 中的目录个数为: $[ $dir_count - 1 ]"

该脚本接收一个参数,即要查找的目录。然后通过 find 命令查找指定目录下的所有文件,并通过管道符将结果传递给 wc 命令来统计文件总数。

其中 -type f 表示只查找文件类型,不包括目录,-type d 表示查找目录类型,不包括文件。

最后输出查找到的文件总数和目录总数(排除 "." 和 ".." 目录)。

返回的 markdown 代码片段如下:

```bash
#!/bin/bash

# 首先判断有的参数是否正确
if [ $# -ne 1 ]; then
    echo "Usage: $0 directory"
    exit 1
fi

# 使用 find 命令查找指定目录下的文件,并通过管道符将结果传递给 wc 命令
# 包含 . 和 .. 目录
file_count=$(find $1 -type f | wc -l)
dir_count=$(find $1 -type d | wc -l)

# 输出结果
echo "目录 $1 中的文件个数为: $file_count"
echo "目录 $1 中的目录个数为: $[ $dir_count - 1 ]"