我正在使用以下代码将共享文件夹结构输出到文本文件:
$path = "\\server\share"
$file = "c:\share-folders.txt"
get-childitem "$path" -recurse -directory | select -expand fullname >> "$file"
我还想将它作为跟踪状态的方式同时写入控制台。我已经尝试使用tee-object附加文件然后管道写入主机,但最多我只能输出到文本文件或控制台,但不能同时输出。有谁知道完成这个的正确方法?
解决方案:将-Append添加到Tee-Object cmdlet的末尾解决了问题。
$path = "\\server\share"
$file = "c:\share-folders.txt"
Get-ChildItem "$Path" -Recurse -Directory | Select -Expand FullName | Tee-Object -FilePath "$File" -Append
答案 0 :(得分:4)
这对我有用
get-childitem "$path" -recurse -directory | select -expand fullname | %{ Write-Output $_ ; $_ >> "$file"}
在此之后,使用Tee命令行开关:
get-childitem "$path" -recurse -directory | select -expand fullname | tee -file "$file"
答案 1 :(得分:0)
或试试这个:
首先选择数据,然后将foreach对象添加到文本文件中并将其写入控制台。
$path = "\\server\share"
$file = "c:\share-folders.txt"
Get-ChildItem "$path" -Recurse -Directory | Select-Object -ExpandProperty FullName | ForEach-Object {Add-Content -Value $_ -Path $file; Write-Host -Object $_}