📅  最后修改于: 2023-12-03 14:55:33.943000             🧑  作者: Mango
在 Shell/Bash 脚本中,我们经常需要查找某个目录下的所有文件,但有时候我们希望忽略隐藏文件(以 .
开头的文件)。本文将介绍如何编写一个查找文件并忽略隐藏文件的 Shell/Bash 脚本。
以下是一个示例的 Shell/Bash 脚本,用于查找指定目录下的所有非隐藏文件。
#!/bin/bash
# 函数用于递归查找非隐藏文件
search() {
local dir=$1
# 遍历目录下的所有文件和子目录
for file in "$dir"/*; do
# 判断是否为目录
if [[ -d "$file" ]]; then
# 递归调用自身查找子目录
search "$file"
else
# 判断是否为隐藏文件
if [[ ! ${file##*/} =~ ^\. ]]; then
# 输出非隐藏文件的路径
echo "- [$file]($file)"
fi
fi
done
}
# 调用 search 函数查找指定目录下的非隐藏文件
search "/path/to/directory"
.sh
的文件,如 find_nonhidden_files.sh
。"/path/to/directory"
为需要查找的目录路径。bash find_nonhidden_files.sh
。脚本执行后,将会递归查找指定目录下的所有非隐藏文件,并将它们的路径以 Markdown 格式输出。
示例输出:
search
函数之前,对目标目录的路径进行正确的输入。以上就是一个简单的 Shell/Bash 脚本,用于查找指定目录下的非隐藏文件。你可以根据实际需求进行修改和定制,以适应不同的查找场景。