📅  最后修改于: 2023-12-03 15:10:45.985000             🧑  作者: Mango
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 ]"