在bash中对echo命令使用文件全局

问题描述

我想做这样的事情:echo "foo" > bar/**/buzz,但这无效

基本上,我想将字符串回显到bar中每个目录中的文件中。

我敢肯定有一种简单的方法可以做到这一点。

解决方法

文件描述符一次只能指向一个位置,因此直接使用一个glob(不能保证完全匹配一个文件)作为一个 的目标是没有意义的。但是,该位置可以是复制到多个目标的程序的标准输入,就像tee在给定多个文件名作为参数时所做的那样:

echo "foo" | tee bar/**/buzz >/dev/null