zsh删除路径中带有通配符的子目录

问题描述 投票:0回答:1

对于以下目录结构:

└── bar
    ├── first
    │   └── tmp
    └── second
        └── tmp

我要删除所有tmp目录。但是,

rm -rf 'bar/*/tmp/'                                

不删除目录

ls bar/*/                                          

仍然重播两个tmp目录:

bar/first/:
tmp

bar/second/:
tmp
wildcard zsh filepath rm
1个回答
0
投票

您的问题是单引号

rm -rf 'bar/*/tmp/'          

如果删除它们,您会没事的。

rm -rf bar/*/tmp

原因是(大多数(如果不是全部)外壳程序语言中的单引号表示所包含的字符串完全被视为字符串,而忽略了您要执行的遍历。

最新问题
© www.soinside.com 2019 - 2024. All rights reserved.