Remove-Item навсегда удаляет ресурс с указанного диска, то есть она не перемещает его в корзину. Таким образом, если вы используете Remove-ltem для удаления файла, то нет иного способа вернуть его, кроме как через программу восстановления файлов. Вы указываете, какой файл должна удалять Remove-ltem при помощи параметра -Path. Он позиционный, поэтому вам не нужно указывать имя параметра – Path, если оно идет сразу же за именем команды. Например, вот команда для удаления файла test. txt, который был ранее скопирован в папку C:BackupsScripts:


Remove-ltem "C:BackupsScriptstest. txt”

Давайте рассмотрим другой пример. Следующая команда удаляет все файлы. txt (что указано в параметре – Include) в папке C:Scripts, кроме тех файлов, которые имеют слово test где-либо в файловом имени (что указано в параметре – Exclude):

Remove-ltem C:Scripts* – Include *.txt – Exclude *test*

Будучи, по сути, опасным инструментом, Remove-ltem предоставляется с парой элементов защиты. Прежде всего, если вы пытаетесь удалить все из папки, которая содержит непустые подпапки, вы получите запрос на подтверждение Confirm. Например, предположим, что C:Scripts содержит непустые подпапки и вы запускаете такую команду:

Remove-ltem C:Scripts*

Нужно подтвердить, что вы хотите удалить непустые подпапки, как показано на экране 7.

Если вы хотите запустить сценарий, который использует Remove – ItemM для удаления всего содержимого папок, включая содержимое подпапок, вам нужен способ запускать Remove-ltem без участия пользователя. Этот способ — включение флажка – Recurse. Второй элемент защиты — это параметр – WhatIf. Если вы включаете его в команду Remove-ltem, то PowerShell покажет, какие элементы будут удалены, вместо того, чтобы просто удалить их.

В силу деструктивной природы операций удаления, имеет смысл выполнять пробное применение команды Remove-ltem с параметром – Whatlf, как здесь:

Remove-ltem с:* – Recurse – Whatlf. Заметьте, что результаты могут включать в строку сообщение об ошибке Cannot remove the item at ‘C:Users’ because it is in use. Такая ситуация возникает, если текущая рабочая папка является подпапкой каталога, которую вы пытаетесь удалить (в примере — подпапка корневого каталога С). Что касается дополнительных имен, то Remove-ltem стоит особняком. У него шесть псевдонимов: del, erase, rd, ri, rm и rmdir.

0 ответы

Ответить

Хотите присоединиться к обсуждению?
Не стесняйтесь вносить свой вклад!

Добавить комментарий