linux - linux 文件搜索中的递归 - Bash 脚本

标签 linux bash recursion

我需要进行一个涉及项目递归的 linux 文件搜索。我在做这件事时得到了一些帮助,所以我不能完全理解这段代码的一部分。有人可以解释一下它的含义,并就我如何让用户输入关键字以及此功能如何在目录中搜索该关键字提供一些帮助吗?谢谢你

#!/bin/bash

lookIn() {
    echo $2
    for d in $(find $1 -type d)
    do
        if [ "$d" != "$1" ]
            echo "looking in $d"
            lookIn $d
        fi
    done
}

lookIn

最佳答案

你只需要findfind 会遍历整个目录。假设 $1 指向您要搜索的文件夹:

read -p "Enter file name to find: " KEYWORD
find $1 -type f -name "$KEYWORD"

如果要查找包含关键字的名称,请使用:

find $1 -type f -name "*${KEYWORD}*"

试试这个,然后你就可以把它应用到你更大的脚本中(无论它做什么)。

关于linux - linux 文件搜索中的递归 - Bash 脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19383447/

相关文章:

recursion - 不能在内部函数中使用外部类型参数的理由是什么?

linux - ALSA 与 PulseAudio - 延迟问题

C:更快地访问查找表?

algorithm - 如何在不修改指针的情况下递归地反转单链表?

linux - 显示大于0的文件内容

bash - 我如何强制 bash 扩展变量以将其作为参数传递?

recursion - 与 SUCC 的功能

python - Minecraft 服务器执行脚本

python - 解析字符串的多个日志文件

linux - Bash递归捕获命令输出