bash - 了解 bash 查找
问题描述
我试图学习 bash 基础知识。我正在尝试如何*/.*
显示文件夹中所有子目录中的所有不可见文件notes-bash
:
~/anir/repos/notes-bash$ find */.*
images/.
images/./bashrepl.png
images/..
images/../.git
images/../.git/COMMIT_EDITMSG
:
del/.
del/..
del/../.git
del/../.git/COMMIT_EDITMSG
del/../.git/HEAD
:
我不明白为什么它将文件列为images/..
. 这是否意味着与 相同的文件夹notes-bash
?我想它只是试图/.
在所有可能的目录中查找。因此,它会在所有子目录(此处images
和del
)中重复出现,以强制形成带有/.
子字符串的路径。
Q1。我对此是否正确?
所以我接下来创建了子目录del/del1
并运行以下命令来检查通过的所有路径del1
:
$ find */.* | grep del1
del/./del1
del/../del/del1
images/../del/del1
Q2。所以,现在我猜为什么它没有重复出现del1
,这就是为什么它没有列出诸如del/del1/../../.git
?
解决方案
我正在尝试如何/. 显示文件夹中所有子目录中的所有不可见文件
notes-bash
.
这将列出当前目录和所有子目录中以 a 开头的所有文件:
~/anir/repos/notes-bash$ find -name '.*'
我不明白为什么它将文件列为
images/..
这是因为*
你的第一个find
匹配一个名为images
inside的目录notes-bash
。
我接下来创建了子目录
del\del1
不,你没有。您创建了一个名为的del
子目录,并且可能是该子目录的子目录del1
。del/del1
将是适当的参考。
你关于为什么没有出现在任何地方的猜测del1
有点不对劲。做就是了
echo */.*
看看它显示了什么。这些是您的find
命令将使用的文件和目录。
推荐阅读
- javascript - 使用 JQuery 隐藏动态创建的 HTML 元素
- apache-spark - Pyspark:spark-submit 不像 CLI 那样工作
- html - 使用 R 将 html 列表转换为树
- python - 在python中,一个字典中可以有多个同名的键吗?如果是这样,您将如何删除特定的?
- python - 从 scipy 优化寻根算法
- ios - 如何创建 Swift 导入子模块
- asp.net - ASP.Net 网站 - 发布不会移动所有文件
- php - php文件从mysql获取最后一个id
- sonarqube - SonarQube TFS 扩展“-X”选项
- reactjs - 在 typescript 中嵌套连接的 redux 容器和展示组件