希望构建目录和文件树,其输出与命令的输出非常相似tree
。借助附加功能,可以将实际文件通过管道传输到 powershell,以便例如在此处搜索regex
文件。
该Calibre
库包含许多文件。
尝试遍历其目录和子目录:
$files = Get-ChildItem "/home/nicholas/Calibre Library/"
foreach ($f in $files){
$outfile = $f.FullName + "out"
Get-Content $f.FullName | Where-Object { ($_ -match 'step4' -or $_ -match 'step9') } | Set-Content $outfile
}
但是,这只会产生错误页面:
11 | Get-Content $f.FullName | Where-Object { ($_ -match 'step4' -or $ …
| ~~~~~~~~~~~~~~~~~~~~~~~
| Unable to get content because it is a directory: '/home/nicholas/Calibre Library/Unknown'. Please use
| 'Get-ChildItem' instead.
这个概念是使用 .txt 搜索“.txt”文件regex
。首先,需要遍历Calibre
库中的“.txt”文件。
(或者,也许,只是将“tree”的输出传递给 powershell?可能更实用?“tree”命令当然可以在 REPL 控制台上运行。至少在 Linux 上。我可能会提出一个单独的问题。)