Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Скриптовые языки администрирования Windows (http://forum.oszone.net/forumdisplay.php?f=102)
-   -   скрипт для удаления в корзину (http://forum.oszone.net/showthread.php?t=348777)

Diman625 16-05-2021 13:52 2958072

скрипт для удаления в корзину
 
У меня есть такой через командную строку

taskkill /f /im uTorrent.exe
del C:\Users\007\Desktop\123\*.torrent
cd /d C:\Users\007\Desktop\"123"\ && rmdir /s /q .

но он удаляет все без возможности восстановить
а я хочу чтобы он удалял в Корзину (чтобы если понадобилось восстановить )

нашел вот такой скрипт
этот удаляет только папку в корзину
Скрытый текст
Add-Type -AssemblyName Microsoft.VisualBasic
[Microsoft.VisualBasic.FileIO.FileSystem]::Deletedirectory('C:\Users\007\Desktop\111','OnlyErrorDialogs','SendToRecycleBin')

а этот удаляет только файл в корзину
Скрытый текст
Add-Type -AssemblyName Microsoft.VisualBasic
[Microsoft.VisualBasic.FileIO.FileSystem]::DeleteFile('e:\test\test.txt','OnlyErrorDialogs','SendToRecycleBin')


а мне надо было чтобы скрипт удалял отдельно файлы которые находятся в папке в корзину
если есть у кого то можно еще скрипт который удаляет определенный формат в корзину
и другой скрипт чтобы удалял уже папки и под папки месте с файлами которые находятся в папке в корзину

Нашел вот такой он удаляет все файлы в папке и под папках остаются только пустые папки, но он удаляет без возможности восстановить
Скрытый текст
Get-ChildItem -Path C:\Users\007\Desktop\111 -Include *.* -File -Recurse | foreach { $_.Delete()}

DJ Mogarych 16-05-2021 14:15 2958077

https://superuser.com/questions/2466...he-recycle-bin

YuS_2 16-05-2021 15:22 2958086

Powershell удалит в корзину файл c:\temp\temp.tmp
Код:

$obj = new-object -com Shell.Application
$pth = 'c:\temp\temp.tmp'
$item = $obj.namespace(0).parsename($pth)
$item.invokeverb('delete')


Diman625 16-05-2021 16:08 2958092

DJ Mogarych,
я сайтов 20-30 просмотрел готового решения не нашел
я не сильно в этом шарю так что
нахожу что подходящее но удаленный файл не появляется в корзине

YuS_2,
мне бы что бы он удалял то один файл а все файлы формата c:\temp\*.tmp

YuS_2 16-05-2021 19:26 2958111

Цитата:

Цитата Diman625
мне бы что бы он удалял то один файл а все файлы формата c:\temp\*.tmp »

изучать надо powershell...
вот функция:
Код:

function remove-itemtorecyclebin {
        param(
                [Parameter(ValueFromPipeline)]
                [ValidateNotNullOrEmpty()]
                $a
    )
        process {
                foreach ($item in $a) {
                        $pth = if ($item.fullname){$item.fullname} else {
                                (gi $item).fullname
                        }
                        if (test-path -lit $pth){
                                $obj = new-object -com Shell.Application
                                $del = $obj.namespace(0).parsename($pth)
                                $del.invokeverb('delete')
                        }
                }
        }         
}

$path = 'c:\temp\*'

#если требуется рекурсивное удаление всех файлов:
#dir $path -file -rec -force|remove-itemtorecyclebin

#если требуется удаление файлов определенного типа:
#dir $path -incl '*.tmp' -rec -force|remove-itemtorecyclebin

#если требуется удаление только каталогов с их содержимым:
#dir $path -dir -force|remove-itemtorecyclebin

#если требуется удаление и каталогов с их содержимым, и файлов:
dir $path -force|remove-itemtorecyclebin


greg zakharov 16-05-2021 22:30 2958123

YuS_2, вариант с COM: 1) требует явного освобождения ресурсов, 2) локалезависим, 3) не всегда корректно воспринимает юникод. Поэтому лучше: 1) взять адрес SHFileOperation из виртуальной памяти pwsh, 2) создать делегата для указанной функции, 3) радоваться жизни.
Также есть не очень популярный метод перемещения:
Код:

Move-Item C:\somedir\somefile.docx "C:\`$RECYCLE.BIN\$([Security.Principal.WindowsIdentity]::GetCurrent().User.Value)"
Почему сиё не нравится многим? Файл может не отражаться в проводнике корзины. Тогда придётся ещё раз ударить в бубен, призвав на помощь rundll32.

DJ Mogarych 17-05-2021 09:23 2958140

А какой вообще смысл удалять в корзину скриптом? Место на диске не освобождается.
Копируйте скриптом в другой каталог (что по сути то же самое), или не удаляйте вообще.
Удаляйте только то, что точно уже не нужно.

greg zakharov 17-05-2021 17:13 2958196

Цитата:

Цитата DJ Mogarych
Место на диске не освобождается.

А Кэпу какбы невдомёк, что корзина может использоваться как загашник? Поверьте, так можно.

Diman625 17-05-2021 22:44 2958242

я его установил вчера ))) чисто из за этой функции удаления в корзину
вроде все то что я искал

Цитата:

Цитата YuS_2
$path = 'c:\temp\*'
#если требуется рекурсивное удаление всех файлов:
#dir $path -file -rec -force|remove-itemtorecyclebin
#если требуется удаление файлов определенного типа:
#dir $path -incl '*.tmp' -rec -force|remove-itemtorecyclebin
#если требуется удаление только каталогов с их содержимым:
#dir $path -dir -force|remove-itemtorecyclebin
#если требуется удаление и каталогов с их содержимым, и файлов:
dir $path -force|remove-itemtorecyclebin »


но что то не понятно что на что менять ))

Diman625 18-05-2021 05:37 2958258

Цитата:

Цитата DJ Mogarych
А какой вообще смысл удалять в корзину скриптом? Место на диске не освобождается.
Копируйте скриптом в другой каталог (что по сути то же самое), или не удаляйте вообще.
Удаляйте только то, что точно уже не нужно. »

пользуюсь скриптом для удаления папки с торрент файлами и загрузками
что бы не удалять по 10 файлов а просто скрипт нажал и папка пуста
иногда подводит )) удаляю почти за груженые файлы или торрент файл загрузки (и приходится за нова качать)
так что корзина это промежуточный этап перед удалением))

Iska 18-05-2021 06:27 2958260

Diman625, а просто в клиенте выставить параметр «Удалять в Корзину» — не?!

Diman625 18-05-2021 20:28 2958325

Вложений: 1
Цитата:

Цитата Iska
а просто в клиенте выставить параметр «Удалять в Корзину» — не?!»

если про свойства корзины то у меня стоит

Iska 19-05-2021 16:56 2958422

Цитата:

Цитата Diman625
если про свойства корзины »

Нет. Я не про Проводник. Я про клиента torrent. Есть в Вашем клиенте такое?

Например:
Скрытый текст

Diman625 19-05-2021 19:26 2958444

Iska, я пользуюсь UTorrent версией 3,1 не помню есть тут реклама или нет

я ее как то отключил
тут такой настройки нету
но я увидел название программы Transmission смотрю обзор на youtube попробую протестировать ))


попробовал удалил его через час или меньше)))
качал мелкие файлы

файлы уже скачаны он пишет что еще не качал даже

добавление файлов тоже так себе под глючивает то добавляет то нет

Iska 19-05-2021 20:38 2958452

Цитата:

Цитата Diman625
Iska, я пользуюсь UTorrent версией 3,1 не помню есть тут реклама или нет »

2.x — наше фсё. Впрочем, я для себя решил вопрос окончательно именно переходом на Transmission.

Да, аналогичной настройки — сразу в Корзину — там нет, но есть такая:
Скрытый текст

И само загруженное содержимое по умолчанию также удаляется в Корзину:
Скрытый текст


Время: 08:00.

Время: 08:00.
© OSzone.net 2001-