Clear-Content
Удаляет содержимое элемента без удаления самого элемента.
Синтаксис
Clear-Content
[-Path] <String[]>
[-Filter <String>]
[-Include <String[]>]
[-Exclude <String[]>]
[-Force]
[-Credential <PSCredential>]
[-WhatIf]
[-Confirm]
[-Stream <String>]
[<CommonParameters>]
Clear-Content
-LiteralPath <String[]>
[-Filter <String>]
[-Include <String[]>]
[-Exclude <String[]>]
[-Force]
[-Credential <PSCredential>]
[-WhatIf]
[-Confirm]
[-Stream <String>]
[<CommonParameters>]
Clear-Content
[-Path] <String[]>
[-Filter <String>]
[-Include <String[]>]
[-Exclude <String[]>]
[-Force]
[-Credential <PSCredential>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Clear-Content
-LiteralPath <String[]>
[-Filter <String>]
[-Include <String[]>]
[-Exclude <String[]>]
[-Force]
[-Credential <PSCredential>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Описание
Командлет Clear-Content
удаляет содержимое элемента, например удаление текста из файла, но не удаляет элемент. В результате элемент существует, но является пустым. Clear-Content
аналогичен Clear-Item
, но он работает над элементами с содержимым вместо элементов со значениями.
Примеры
Пример 1. Удаление всего содержимого из каталога
Clear-Content "..\SmpUsers\*\init.txt"
Эта команда удаляет все содержимое из init.txt
файлов во всех подкаталогах SmpUsers
каталога. Сами файлы не удаляются, но становятся пустыми.
Пример 2. Удаление содержимого всех файлов с подстановочным знаком
Clear-Content -Path "*" -Filter "*.log" -Force
Эта команда удаляет содержимое всех файлов в текущем каталоге с .log
расширением имени файла, включая файлы с атрибутом только для чтения. Звездочка (*
) в пути представляет все элементы в текущем каталоге. Параметр Force делает команду эффективной в файлах только для чтения. Использование фильтра, чтобы ограничить команду файлами с .log
расширением имени файла, а не указывать *.log
в пути, делает операцию быстрее.
Пример 3. Очистка всех данных из потока
В этом примере показано, как Clear-Content
командлет очищает содержимое из альтернативного потока данных при сохранении потока без изменений.
Первая команда использует Get-Content
командлет для получения содержимого Zone.Identifier
потока в Copy-Script.ps1
файле, который был скачан из Интернета.
Вторая команда использует Clear-Content
командлет для очистки содержимого.
Третья команда повторяет первую команду. Он проверяет, очищается ли содержимое, но поток остается. Если поток был удален, команда создаст ошибку.
Этот метод можно использовать для очистки содержимого альтернативного потока данных. Однако не рекомендуется отменять проверки безопасности, которые блокируют файлы, загруженные из Интернета. Если вы убедитесь, что скачанный файл является безопасным, используйте Unblock-File
командлет.
Get-Content C:\Test\Copy-Script.ps1 -Stream Zone.Identifier
[ZoneTransfer]
ZoneId=3
Clear-Content C:\Test\Copy-Script.ps1 -Stream Zone.Identifier
Get-Content C:\Test\Copy-Script.ps1 -Stream Zone.Identifier
Параметры
-Confirm
Запрос подтверждения перед выполнением командлета.
Тип: | SwitchParameter |
Aliases: | cf |
Position: | Named |
Default value: | None |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
-Credential
Примечание.
Этот параметр не поддерживается поставщиками, установленными с помощью PowerShell. Для олицетворения другого пользователя или повышения учетных данных при выполнении этого командлета используйте Invoke-Command
.
Тип: | PSCredential |
Position: | Named |
Default value: | Current user |
Обязательно: | False |
Принять входные данные конвейера: | True |
Принять подстановочные знаки: | False |
-Exclude
Указывает, как строковый массив, строки, которые этот командлет пропускает из пути к содержимому. Значение этого параметра определяет параметр Path. Введите элемент пути или шаблон, например *.txt
. Разрешено использовать подстановочные знаки.
Тип: | String[] |
Position: | Named |
Default value: | None |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | True |
-Filter
Задает фильтр в формате или на языке поставщика. Значение этого параметра определяет параметр Path. Синтаксис фильтра, включая использование подстановочных знаков, зависит от поставщика. Фильтры более эффективны, чем другие параметры, так как поставщик применяет их при извлечении объектов, а не фильтрует объекты после их извлечения.
Тип: | String |
Position: | Named |
Default value: | None |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | True |
-Force
Принудительное выполнение команды без запроса на подтверждение пользователем.
Тип: | SwitchParameter |
Position: | Named |
Default value: | False |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
-Include
Указывает в виде строкового массива содержимое, которое этот командлет очищает. Значение этого параметра определяет параметр Path. Введите элемент пути или шаблон, например *.txt
. Разрешено использовать подстановочные знаки.
Тип: | String[] |
Position: | Named |
Default value: | None |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | True |
-LiteralPath
Задает путь к элементам, содержимое которых требуется удалить. В отличие от параметра Path, значение LiteralPath используется именно так, как оно введено. Никакие символы не интерпретируются как знаки подстановки.
Если путь содержит escape-символы, заключите его в одинарные кавычки ('
). Одинарные кавычки говорят, что PowerShell не интерпретирует какие-либо символы как escape-последовательности.
Тип: | String[] |
Aliases: | PSPath, LP |
Position: | Named |
Default value: | None |
Обязательно: | True |
Принять входные данные конвейера: | True |
Принять подстановочные знаки: | False |
-Path
Задает путь к элементам, содержимое которых требуется удалить. Разрешено использовать подстановочные знаки. Пути должны вести к элементам, а не к контейнерам. Например, нужно указать путь к одному или нескольким файлам, а не путь к каталогу. Разрешено использовать подстановочные знаки. Этот параметр является обязательным, но имя параметра (Path) является необязательным.
Тип: | String[] |
Position: | 0 |
Default value: | None |
Обязательно: | True |
Принять входные данные конвейера: | True |
Принять подстановочные знаки: | True |
-Stream
Это динамический параметр, доступный поставщиком FileSystem . Этот параметр доступен только в Windows.
Задает альтернативный поток данных для содержимого. Если поток не существует, этот командлет создает его. Подстановочные знаки не поддерживаются.
С помощью командлета Clear-Content
можно изменить содержимое любого альтернативного потока данных, например Zone.Identifier
. Однако мы не рекомендуем это сделать так, чтобы устранить проверки безопасности, которые блокируют файлы, скачанные из Интернета. Если вы убедитесь, что скачанный файл является безопасным, используйте Unblock-File
командлет.
Этот параметр появился в PowerShell 3.0. По состоянию на PowerShell 7.2 Clear-Content
можно очистить содержимое альтернативных потоков данных из каталогов, а также файлов.
Дополнительные сведения см. в about_FileSystem_Provider.
Тип: | String |
Position: | Named |
Default value: | None |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
-WhatIf
Показывает, что произойдет при запуске командлета. Командлет не выполняется.
Тип: | SwitchParameter |
Aliases: | wi |
Position: | Named |
Default value: | False |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
Входные данные
None
Невозможно передать объекты в этот командлет.
Выходные данные
None
Этот командлет не возвращает выходные данные.
Примечания
PowerShell включает следующие псевдонимы для Clear-Content
:
- Все платформы:
clc
Вы можете использовать Clear-Content
с поставщиком Файловой системы PowerShell и другими поставщиками, которые управляют содержимым. Чтобы очистить элементы, которые не считаются контентом, например элементы, управляемые поставщиками сертификатов PowerShell или реестров, используйте Clear-Item
.
Командлет Clear-Content
предназначен для работы с данными, предоставляемыми любым поставщиком.
Чтобы вывести список поставщиков, доступных в данном сеансе, введите командлет Get-PsProvider
.
Дополнительные сведения см. в about_Providers.
Связанные ссылки
PowerShell