我有大约 30 个目录,其中包含 .log 文件。我想进入每个文件夹并分别组合子目录中所有文件的文本。我不想合并所有子目录中所有文件的文本。
例子
我有一个名为 Machines 的目录
在Machines\
我有
Machine2\
Machine3\
Machine4\
在每个Machine*
文件夹中,我有:
1.log
2.log
3.log
etc..
我想创建一个可以执行以下操作的脚本:
第一:进入目录Machine2
,合并该目录下所有文本文件的文本 第二:进入Machine3
目录,合并该目录下所有文本文件的文本。
如果只有一个文件夹,我可以使用下面的,但我需要它循环几个子文件夹,所以我不必在下面的命令中输入子目录。
Get-ChildItem -path "W:\Machines\Machine2" -recurse |?{ ! $_.PSIsContainer } |?{($_.name).contains(".log")} | %{ Out-File -filepath c:\machine1.txt -inputobject (get-content $_.fullname) -Append}