|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » PowerShell - [решено] Невозможно вызвать метод для выражения со значением NULL |
|
PowerShell - [решено] Невозможно вызвать метод для выражения со значением NULL
|
Новый участник Сообщения: 10 |
Профиль | Отправить PM | Цитировать Скрипт
$data = & dism /online /get-drivers /format:table | select -Skip 12 $Headers = @( ($data | select -First 1).ToString().Split('|') | %{$_.Trim()} ) $HashTable = $data | select -Skip 2 | ConvertFrom-Csv -Delimiter '|' -Header $Headers | select @{n='FileName';e={$_."$($Headers[1])"}}, @{n='Class';e={$_."$($Headers[3])"}}, @{n='Vendor';e={$_."$($Headers[4])"}}, @{n='Date';e={[datetime]::Parse($_."$($Headers[5])")}}, @{n='Version';e={$_."$($Headers[6])"}} Write-Host "All installed third-party drivers" $HashTable | sort Filename | ft Write-Host "Different versions" $last = '' $NotUnique = @() foreach ( $Dr in $($HashTable | sort Filename) ) { if ($Dr.FileName -eq $last ) { $NotUnique += $Dr } $last = $Dr.FileName } $NotUnique | sort FileName | ft Write-Host "Outdated drivers" $list = $NotUnique | select -ExpandProperty FileName -Unique $ToDel = @() foreach ( $Dr in $list ) { Write-Host "Duplicate found" $sel = $HashTable | where { $_.FileName -eq $Dr } | sort date -Descending | select -Skip 1 $sel | ft $ToDel += $sel } Write-Host "Drivers to remove" $ToDel | ft foreach ( $item in $ToDel ) { $Name = $($item.Name).Trim() Write-Host "deleting $Name" Write-Host "pnputil.exe -d $Name" Invoke-Expression -Command "pnputil.exe -d $Name" } Имеется скрипт удаления старых драйверов. Функция удаления почему-то не "очень удаляет", выдавая |
|
Отправлено: 16:48, 18-07-2017 |
Ветеран Сообщения: 1259
|
Профиль | Отправить PM | Цитировать $item.FileName.Trim() - должно быть FileName, вместо Name,т.к. Name - отсутствует.
|
Отправлено: 17:04, 18-07-2017 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Участник сейчас на форуме | Участник вне форума | Автор темы | Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
CMD/BAT - Регулярные выражения для образки URL | ntro123 | Скриптовые языки администрирования Windows | 4 | 22-02-2014 21:59 | |
[решено] Указание data = null для MySQL с использованием php | cibin | Вебмастеру | 3 | 08-07-2012 16:48 | |
[решено] RunAs, как вызвать msgbox для ввода пароля? | HFShak | AutoIt | 2 | 17-01-2012 12:29 | |
CMD/BAT - Узнать версию файла и сравнить со значением | Fresh96 | Скриптовые языки администрирования Windows | 3 | 10-11-2011 08:34 | |
[решено] Как установить Resizing метод для StatusBar? | beve | AutoIt | 1 | 29-09-2009 16:14 |
|