我有一堆目录,在每个目录中我都有一堆子目录,在每个子目录中我有1个名为x1
的文件,可能有y1
{ {1}}也是。
我希望有一个shell脚本,针对每个目录,遍历子目录并将所有z1
连接到一个文件以及所有x1
和所有y1
秒。
我试过了
z1
我不知道它是如何为每个
工作的答案 0 :(得分:0)
如果您正在使用zsh
此for
循环工作:
for dir in *(/); do
cat "$dir"/*.x1 > "$dir"/combined.x1
[[ -n "$dir"/*.y1 ]] && cat "$dir"/*.y1 > "$dir"/combined.y1
[[ -n "$dir"/*.z1 ]] && cat "$di"r/*.z1 > "$dir"/combined.z1
done
对于bash
,您似乎只需要更新dir
模式:
for dir in */; do
cat "$dir"/*.x1 > "$dir"/combined.x1
[[ -n "$dir"/*.y1 ]] && cat "$dir"/*.y1 > "$dir"/combined.y1
[[ -n "$dir"/*.z1 ]] && cat "$di"r/*.z1 > "$dir"/combined.z1
done