![什么工具可以让我使用 ** 指定任意目录](https://linux22.com/image/21629/%E4%BB%80%E4%B9%88%E5%B7%A5%E5%85%B7%E5%8F%AF%E4%BB%A5%E8%AE%A9%E6%88%91%E4%BD%BF%E7%94%A8%20**%20%E6%8C%87%E5%AE%9A%E4%BB%BB%E6%84%8F%E7%9B%AE%E5%BD%95.png)
我曾经看到一位同事使用一种工具,允许使用 ** 来表示任何目录。例如:如果一个名为的文件myfile.java
位于深处:
src/main/com/mycompany/product/store/myfile.java
父目录中的命令src
:
ls **/myfile.java
可以列出该文件。
谁能告诉我这是什么工具?我需要使用什么包才能Ubuntu
实现此目的?
答案1
在 bash ≥4.0 中,打开该globstar
选项。
$ shopt -s globstar
$ echo pylib/**/pyerector.py
pylib/pyerector.py pylib/pyerector/pyerector.py
您可以在中阅读更多相关信息联机帮助页。
在 zsh 中,这是开箱即用的。
在 ksh93 中,使用 激活它set -o globstar
。
在普通的 sh 或 bash ≤3.x 中,这是不可用的。