使用 bash 终端命令打开目录和子目录中的所有文件?

Open all files in a directory and subdirectories using bash terminal command?

我有一个别名,我可以使用 open file1.type file2.typeopen *.type

我想要的是能够在我当前位置的所有子目录上使用它。因此,如果我在父目录中并且有两个子目录,运行 命令将与 运行 open file1.type file2.type child1/file1.type child2/file1.type

相同

所以像 open -? *.type 这样的东西就是我要找的东西。

find 适用于此类功能。像这样:

find . -type f -name \*.type -exec open {} \;

或者在这种情况下,由于 open 是一个别名,您必须 运行 将 shell 作为命令:

find . -type f -name \*.type -exec bash -c open {} \;

如果 运行 zsh 或 bash 4.x 设置了 globstar 选项,** 将递归匹配所有目录。

#!/bin/zsh
open **/*.type

...

#!/bin/bash
shopt -s globstar
open **/*.type