如何在所有子文件夹中搜索通配符名称?dir *pattern* /s
* nix中的DOS命令相当于什么?
如何在所有子文件夹中搜索通配符名称?dir *pattern* /s
* nix中的DOS命令相当于什么?
Answers:
Zsh:
ls -ld -- **/*abcd*
Ksh93:
set -o globstar # put this line in your ~/.kshrc
ls -ld -- **/*abcd*
重击≥4
shopt -s globstar # put this line in your ~/.bashrc
ls -ld -- **/*abcd*
Yash:
set -o extendedglob # put this line in your ~/.yashrc
ls -ld -- **/*abcd*
tcsh:
set globstar
ls -ld -- **/*abcd*
鱼:
ls -ld -- **abcd*
(注意其中一些炮弹降目录树时,将遵循符号链接;有的那些不喜欢的zsh
,yash
或者tcsh
有***/*abcd*
这样做)。
可移植(对于非常老的系统除外; OpenBSD花费了很长时间,但从exec … +
5.1开始最终支持):
find . -name '*abcd*' -exec ls -ld {} +
不是POSIX,但可以在* BSD,Linux,Cygwin,BusyBox上使用:
find . -name '*abcd*' -print0 | xargs -0 ls -ld
请注意,除了在某些BSD中,如果找不到匹配的文件,ls -ld
将在不带参数的情况下运行,而list也会运行.
。对于某些xargs
实现,您可以使用该-r
选项来解决。
globstar
。