0

모든 SharePoint 콘텐츠 데이터베이스의 정보를 CSV 파일로 내보내는 powershell 한 개의 라이너를 얻으려고합니다. 그러면이 스크립트를 탑재 스크립트 용 입력으로 사용할 수 있습니다 .Get-SPContentDatabase를 CSV로 내보내고 웹 응용 프로그램 URL을 포함합니다.

은 내가 실행하는 경우 :

Get-SPContentDatabase | Select Name, DatabaseServer, MaximumSiteCount, WarningSiteCount | Export-CSV DatabaseExport.CSV

내가 필요로하는 대부분의 정보를 얻을 수 있지만 웹 응용 프로그램의 URL을 얻을 수 없습니다. WebApplication은 "SPWebApplication Name = webappname"으로 내 보냅니다. 여기서 URL 또는 ID가 필요합니다.

나는 스크립트를 통해 루프를 작성하고 내 보낸 CSV에 URL을 추가해야한다고 생각하지만 한 라이너에이 코드를 포함시키는 것이 좋습니다.

답변

0

Calculate 속성 (powershell의 정말 멋진 기능)을 사용할 수 있습니다! 당신 한 줄 스크립트;)

Get-SPContentDatabase | select Name, Server, MaximumSiteCount, WarningSiteCount , @{Name="URL";Expression={$_.WebApplication.Url}} | Export-Csv TestDB.csv -NoTypeInformation 
0

글쎄, 당신은 한 줄 솔루션을 가지고 올 경우 아무도 나, 나는 그것을 내 버전을 공유합니다 :

$dbs = Get-SPContentDatabase 
$result = @(); 
foreach($db in $dbs){ 
    $obj = New-Object PSObject 
    $obj | Add-Member -Type NoteProperty -Name "URL" -Value $db.WebApplication.URL 
    $obj | Add-Member -Type NoteProperty -Name "Name" -Value $db.Name 
    $obj | Add-Member -Type NoteProperty -Name "DatabaseServer" -Value $db.Server 
    $obj | Add-Member -Type NoteProperty -Name "MaximumSiteCount" -Value $db.MaximumSiteCount 
    $obj | Add-Member -Type NoteProperty -Name "WarningSiteCount" -Value $db.WarningSiteCount 
    $result += $obj 
} 

$result | Export-Csv .\DatabaseExport.csv -NoTypeInformation 

그냥 추가/당신이 필요로하는 경우 속성을 제거합니다. 사용할 수있는 모든 속성에 대해 this list을 확인하십시오.

+1

고마워요. 그게 내가 가진 것 같아. PowerShell의 한 줄에서 할 수 있어야하는 것처럼 보였습니다. – monkeymagik