Điểm:0

PoshWSUS - cách lấy ngày vá cuối cùng trên mỗi máy chủ?

lá cờ jp

vì vậy tôi có mô-đun PoshWSUS này và một tập lệnh chạy trên WSUS và tạo tệp CSV. Tôi đang cố cập nhật nó để nó cũng chứa ngày vá cuối cùng cột nhưng gặp khó khăn khi tìm ra nó

Nhập mô-đun -name poshwsus -force
Nhập mô-đun -name SysDBApi -force
Nhập mô-đun -name EncryptedCredential -force -ErrorAction Stop

#lấy thông tin đăng nhập
$cred = Nhập-Clixml 'E:\WCO\transit.xml'
$SysDBcred = Nhập-Clixml 'E:\WCO\SysDBCred.xml'
$UseSSL = $True
$Cảng = 8530
$Date = get-date -Định dạng dd-MM-yyyy
$Time = get-date -định dạng HHmmss
$Filename = "$($env:COMPUTERNAME)_$($Date)_$($Time)"


[reflection.assembly]::LoadWithPartialName("Microsoft.UpdateServices.Administration") | ngoài giá trị

Kết nối-PSWSUSServer -WsusServer $env:COMPUTERNAME -Port $Port
$ClientInfoHash = Get-PSWSUSClient | 
    Nhóm-Đối tượng -Id Thuộc tính -AsHashTable -AsString 
$UpdateScope = Mới-PSWSUSUpdateScope -UpdateApprovalActions Install -ExcludedInstallationStates NotApplicable 
$Classifications = Get-PSWSUSClassification | Where-Object {$_.Title -eq "Security Updates" }
$UpdateScope.Classifications.AddRange($Classifications)
$WsusData = Get-PSWSUSUpdateSummaryPerClient -UpdateScope $UpdateScope
$WsusData | 
    Select-Object @{name="Tên máy tính";Expression={($ClientInfoHash[$_.ComputerTargetID].FullDomainName).split(".",2) | chọn -đầu tiên 1}},
                  @{name="Tên miền";Biểu thức={
                      if ( ($ClientInfoHash[$_.ComputerTargetID].FullDomainName).split(".",2)[1])
                      {
                        ($ClientInfoHash[$_.ComputerTargetID].FullDomainName).split(".",2) | chọn -last 1
                      }
                      khác
                      {
                        "NHÓM LÀM VIỆC"
                      }
                  }},

                  @{name="Customer";Expression={(Get-SysDBHost -Credentials $SysDBcred -ComputerName ( ($ClientInfoHash[$_.ComputerTargetID].FullDomainName).split(".",2) | select -first 1)) .Khách hàng}},
                  @{name="Trạng thái được báo cáo lần cuối";Expression={$ClientInfoHash[$_.ComputerTargetID].LastReportedStatusTime}},
                  @{name="Cập nhật bắt buộc";biểu thức={$_.cần thiết}}, 
                  @{name="Total Updates";expression={($_.Installed+$_.Needed+$_.PendingReboot+$_.Failed)}}, 
                  @{name="% Of Compliance";expression={"$([math]::Round((($_.Installed / ($_.Installed+$_.Needed+$_.PendingReboot+$_.Failed)) * 100),0))%"}}, 
                  @{name="Operating System";Expression={$ClientInfoHash[$_.ComputerTargetID].OSDescription}}|
    Export-Csv -Path "E:\Reports\$($Filename)_UpdatesStatus.csv" -NoTypeInformation -Encoding "utf8" -Delimiter ";" 

Trên một máy chủ WSUS khác, chúng tôi sử dụng các truy vấn sqlcmd và SQL để lấy dữ liệu này và phần nhận thông tin này trông giống như sau:

CHỌN LIP.FullDomainName là 'Tên máy chủ',LIP.GroupName là 'Tên nhóm',
LIP.CreationDate là 'Ngày cài đặt bản vá gần đây nhất', TRƯỜNG HỢP KHI NUP.NumUPatches là NULL THÌ 0 ELSE NUP.NumUPatches END là 'Số bản vá cần thiết' TỪ LATESTINSTPATCH LIP TRÁI THAM GIA NumOfUNINSTPATCH NUP TRÊN LIP.ComputerID=NUP.ComputerID
ĐẶT HÀNG THEO NUP.NumUpatches

Dựa theo https://docs.microsoft.com/en-us/previous-versions/windows/desktop/bb410149(v=vs.85) nó nằm trong PUBLIC_VIEWS.vUpdate, nhưng làm thế nào để làm việc với cái này trong PoshWSUS?

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.