许多相关的问题让我能够按照我想要的方式进行工作。在 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 函数,所以我希望这对于那些更熟悉它的人来说是简单明了的。