我有一组树状结构的嵌套目录,树底部的每个目录都包含另一个名为“dump”的目录。
我想创建一个名为“paths”的文件,其中包含“dump”目录的所有路径,每个路径都以新行分隔。
我的尝试是:
echo ./*/*/*/dump | cat >paths
这种作品,但路径不是由新行分隔。我怎样才能实现这一点,可能使用echo和cat?
答案 0 :(得分:1)
将echo
与glob一起使用并将其一次一行地传递给xargs
(-n1
)并将其作为
echo ./*/*/*/dump | xargs -n1 > file
答案 1 :(得分:1)
您可以改为使用find
:
find . -type d -path '*/dump' > paths
或者只是在echo
中printf
替换glob
:
printf "%s\n" ./*/*/*/dump >paths