使用 bash 函数仅显示非隐藏目录

使用 bash 函数仅显示非隐藏目录

许多相关的问题让我能够按照我想要的方式进行工作。在 CLI 上运行此命令会显示非隐藏(不以“.”开头)目录,并且不会深入其中。

find /home/pbw10 -type d -path '*/.*' -prune -o -not -name '.*' -print

但如果它在函数中,则会显示所有目录以及文件。该示例是根据我实际所做的进行简化的,以便更清楚地说明问题所在。

runIt() {
    thePath='/home/pbw10'
    theCmd="find $thePath -type d"
    theCmd+=" -path '*/.*' -prune -o -not -name '.*' -print"
    # Show it.
    echo "$theCmd"
    # Runs it.
    # This does not exclude the hidden directories (or files).
    echo "$($theCmd)"
}

我很少使用 bash 函数,所以我希望这对于那些更熟悉它的人来说是简单明了的。

相关内容