仅列出与模式匹配的目录名称

Jor*_*hez 22 bash shell

我对要获取的命令或修饰符感到困惑:名称包含模式的目录列表(仅限目录,不包括子目录).

提前致谢.

cho*_*oba 35

您可能在-d切换之后ls:

ls -d *pattern*/
Run Code Online (Sandbox Code Playgroud)


Gil*_*not 7

使用这个小技巧:

printf '%s\n' *pattern*/
Run Code Online (Sandbox Code Playgroud)

如果你更喜欢在同一行:

echo *pattern*/
Run Code Online (Sandbox Code Playgroud)

或使用数组:

arr=( *pattern*/ )
printf '%s\n' "${arr[@]%/}"
Run Code Online (Sandbox Code Playgroud)


Jor*_*hez 0

这对我有用。

但它还输出目录特征、权限、日期等,我只想显示目录名称。

ls -t | grep '^d' | grep 'pattern'
Run Code Online (Sandbox Code Playgroud)