Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » PowerShell - Удаление из корзины конкретного файла

Ответить
Настройки темы
PowerShell - Удаление из корзины конкретного файла

Новый участник


Сообщения: 5
Благодарности: 0

Профиль | Отправить PM | Цитировать


С помощью этой строки кода можно вывести все элементы из всех корзин текущего пользователя в виде Исходное расположение и Имя:
Код: Выделить весь код
(New-Object -ComObject Shell.Application).NameSpace(0x0a).Items() | select @{n="OriginalLocation"; e={$_.ExtendedProperty("{9B174B33-40FF-11D2-A27E-00C04FC30871} 2")}}, Name
Подскажите, как допилить эту строку, чтобы вместо вывода списка всех файлов корзин просто удалялся определённый из них, который подпадает под условие его исходного расположения вместе с именем, определённый полный исходный путь в общем).

Если бы в качестве условия было только лишь название файла без пути, то всё решалось бы таки образом:
Код: Выделить весь код
(New-Object -ComObject Shell.Application).NameSpace(0x0a).Items() | Where-Object {$_.Name -like 'имя_файла.расширение'} | Remove-Item

Отправлено: 19:51, Вчера

 

Аватара для DJ Mogarych

fascinating rhythm


Moderator


Сообщения: 6568
Благодарности: 1505

Профиль | Отправить PM | Цитировать


Код: Выделить весь код
$file = 'C:\Users\User\Downloads\file — копия (3).txt'

(New-Object -ComObject Shell.Application).NameSpace(0x0a).Items() |
? { "$($_.ExtendedProperty("{9B174B33-40FF-11D2-A27E-00C04FC30871} 2"))\$($_.name)" -eq $file } |del

-------
Powershell 7.x | Powershell 5.1 | ffmpeg (docs)

Это сообщение посчитали полезным следующие участники:

Отправлено: 10:33, Сегодня | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Новый участник


Сообщения: 5
Благодарности: 0

Профиль | Отправить PM | Цитировать


DJ Mogarych
Прекрасно, работает, спасибо! Только конструкция '{9B174B33-40FF-11D2-A27E-00C04FC30871} 2' должна быть в одинарных кавычках, иначе весь код дальше экранируется.

Но лично для меня предпочтительнее вообще такая запись:
Код: Выделить весь код
(New-Object -ComObject Shell.Application).NameSpace(0x0a).Items() | ? {$($_.ExtendedProperty('{9B174B33-40FF-11D2-A27E-00C04FC30871} 2'))+'\'+$($_.Name) -like $file} | Remove-Item

Отправлено: 13:43, Сегодня | #3



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » PowerShell - Удаление из корзины конкретного файла

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Разное - Удаление/отключение Корзины _dev_null Microsoft Windows 7 0 12-11-2013 22:20
CMD/BAT - удаление строки из файла HFShak Скриптовые языки администрирования Windows 5 05-11-2013 21:14
CMD/BAT - Удаление ненужного из txt-файла feytan Скриптовые языки администрирования Windows 0 01-02-2013 14:41
Удаление системного файла из system32 Guest Microsoft Windows NT/2000/2003 7 25-05-2012 19:58
Удаление файла из шары EndErr Microsoft Windows NT/2000/2003 5 02-11-2007 12:17




 
Переход