1
下面是代碼:的StreamWriter在PowerShell中輸出的空白文件
$outputPath = "c:\Output"
$scopePath = "$($outputpath)\scopes.csv"
$clientsPath = "$($outputpath)\clients.csv"
$scopeStream = New-Object System.IO.StreamWriter($scopePath)
$clientStream = New-Object System.IO.StreamWriter($clientsPath)
$scopeStream.WriteLine("Scope,ScopeName")
$clientStream.WriteLine("IP,MAC,Lease,Reservation,Hostname")
$scopeStream.Flush()
$clientStream.Flush()
...
$scopeStream.WriteLine("$($scope.Name),$($scope.Address)")
...
$clientStream.WriteLine("$($client.IP),$($client.MAC),$($client.Lease),$($client.Reservation)$($client.Hostname)")
...
$scopeStream.close()
$scopeStream.dispose()
$clientStream.close()
$clientStream.dispose()
如果它們不存在的文件被創建,但沒有什麼是以往任何時候都寫信給他們。完全空白的文件,我無法弄清楚爲什麼,爲了我的生活。
我不能檢查這個到週一,但它肯定不能傷害。 – sapph
事實證明,腳本的先前運行在句柄可以關閉和處置之前已經終止,因此文件被鎖定。所以我用try/catch包裝了New-Object。 catch關閉並處理,然後對新對象執行第二次(嵌套)try/catch。如果失敗了,我只是拋出一個錯誤。 – sapph
非常好!我很高興你能夠得到它的工作。 – KevinD