使用 bash 终端命令打开目录和子目录中的所有文件?
Open all files in a directory and subdirectories using bash terminal command?
我有一个别名,我可以使用 open file1.type file2.type
或 open *.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
我有一个别名,我可以使用 open file1.type file2.type
或 open *.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