首页 > 解决方案 > Linux find 未命中目标?

问题描述

我有一个文件结构如下:

.
├── a.o
└── test_sub
    └── b.o

从 test_sub 中,“find .. -name *.o”只产生 bo 有什么问题吗?

$ find .. -name *.o
../test_sub/b.o

如果这很重要,我正在 Ubuntu 16.04 VM 上进行测试。

标签: linuxfindcommand

解决方案


cmd 中的 *.o 通配符由 shell 解释,而不是 find 程序。因此,当您的 cwd 为 test_sub 时,执行的实际命令是“find .. -name bo”,它正确地在 ../test_sub 中找到 bo。

您真正想要的是 *.o 模式由 find 命令解释。所以,你想逃避它,以便 shell 不理会它:

$ 查找 .. -name "*.o"


推荐阅读