Поделиться через


Clear-Content

Удаляет содержимое элемента без удаления самого элемента, например, удаляет текст из файла.

Синтаксис

Clear-Content [-LiteralPath] <string[]> [-Credential <PSCredential>] [-Exclude <string[]>] [-Filter <string>] [-Force] [-Include <string[]>] [-Confirm] [-WhatIf] [-UseTransaction] [<CommonParameters>]

Clear-Content [-Path] <string[]> [-Credential <PSCredential>] [-Exclude <string[]>] [-Filter <string>] [-Force] [-Include <string[]>] [-Confirm] [-WhatIf] [-UseTransaction] [<CommonParameters>]

Описание

Командлет Clear-Content удаляет содержимое элемента без удаления самого элемента, например, удаляет текст из файла. В результате элемент существует, но является пустым. Командлет Clear-Content действует аналогично командлету Clear-Item, но предназначен для работы с файлами, а не псевдонимами и переменными.

Параметры

-Credential <PSCredential>

Задает учетную запись пользователя, который располагает разрешением для выполнения этого действия. По умолчанию используется значение "Текущий пользователь".

Введите имя пользователя, например "User01" или "Domain01\User01", или введите объект PSCredential, например объект, создаваемый командлетом Get-Credential. При вводе имени пользователя система запросит пароль.

Этот параметр не поддерживается ни одним из установленных с Windows PowerShell поставщиком.

Обязательно?

false

Позиция?

named

Значение по умолчанию

Принимать входные данные из конвейера?

true (ByPropertyName)

Принимать подстановочные знаки?

false

-Exclude <string[]>

Исключает указанные элементы. Значение этого параметра определяет значение параметра Path. Введите элемент пути или шаблон, например "*.txt". Подстановочные знаки разрешены.

Обязательно?

false

Позиция?

named

Значение по умолчанию

Принимать входные данные из конвейера?

false

Принимать подстановочные знаки?

false

-Filter <string>

Задает фильтр с использованием формата или языка поставщика. Значение этого параметра определяет значение параметра Path. Синтаксис фильтра, в том числе использование подстановочных знаков, зависит от поставщика. Фильтры эффективнее других параметров, потому что поставщик применяет их при извлечении объектов (вместо использования Windows PowerShell для фильтрации извлеченных объектов).

Обязательно?

false

Позиция?

named

Значение по умолчанию

Принимать входные данные из конвейера?

false

Принимать подстановочные знаки?

false

-Force

Позволяет командлету очистить содержимое файла, даже если файл доступен только для чтения. Реализация варьируется от поставщика к поставщику. Дополнительные сведения см. в разделе About_Providers. Даже при использовании параметра Force командлет не может переопределить ограничения безопасности.

Обязательно?

false

Позиция?

named

Значение по умолчанию

Принимать входные данные из конвейера?

false

Принимать подстановочные знаки?

false

-Include <string[]>

Очищает только указанные элементы. Значение этого параметра определяет значение параметра Path. Введите элемент пути или шаблон, например "*.txt". Подстановочные знаки разрешены.

Обязательно?

false

Позиция?

named

Значение по умолчанию

Принимать входные данные из конвейера?

false

Принимать подстановочные знаки?

false

-LiteralPath <string[]>

Задает путь к элементам, содержимое которых требуется удалить. В отличие от значения параметра Path, значение параметра LiteralPath используется точно в том виде, в котором оно введено. Никакие символы не интерпретируются как подстановочные знаки. Если путь включает escape-символы, его нужно заключить в одиночные кавычки. Одиночные кавычки указывают оболочке Windows PowerShell, что никакие символы не следует интерпретировать как escape-символы.

Обязательно?

true

Позиция?

1

Значение по умолчанию

Принимать входные данные из конвейера?

true (ByPropertyName)

Принимать подстановочные знаки?

false

-Path <string[]>

Задает путь к элементам, содержимое которых требуется удалить. Подстановочные знаки разрешены. Пути должны быть путями к элементам, а не контейнерам. Например, нужно указать путь к одному или нескольким файлам, а не путь к каталогу. Подстановочные знаки разрешены. Этот параметр обязателен, но его имя ("Path") можно не указывать.

Обязательно?

true

Позиция?

1

Значение по умолчанию

Принимать входные данные из конвейера?

true (ByPropertyName)

Принимать подстановочные знаки?

false

-Confirm

Запрашивает подтверждение перед выполнением команды.

Обязательно?

false

Позиция?

named

Значение по умолчанию

Принимать входные данные из конвейера?

false

Принимать подстановочные знаки?

false

-WhatIf

Описывает, что произойдет при выполнении команды, без ее фактического выполнения.

Обязательно?

false

Позиция?

named

Значение по умолчанию

Принимать входные данные из конвейера?

false

Принимать подстановочные знаки?

false

-UseTransaction

Включает команду в активную транзакцию. Этот параметр допустим, только если транзакция выполняется. Дополнительные сведения см. в разделе about_Transactions.

Обязательно?

false

Позиция?

named

Значение по умолчанию

Принимать входные данные из конвейера?

false

Принимать подстановочные знаки?

false

<CommonParameters>

Данный командлет поддерживает общие параметры -Verbose, -Debug, -ErrorAction, -ErrorVariable, -OutBuffer и -OutVariable. Дополнительные сведения см. в разделе about_Commonparameters.

Ввод и вывод

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

Входные данные

Нет

Объекты невозможно передать командлету Clear-Content по конвейеру.

Выходные данные

Нет

Этот командлет не возвращает никаких объектов.

Примечания

Командлет Clear-Content также можно вызывать с помощью встроенного псевдонима "clc". Дополнительные сведения см. в разделе About_Aliases.

Если имя параметра -Path опущено, его значение в списке параметров команды должно быть указано первым. Например, "clear-content c:\mydir\*.txt". Если указать имя параметра, можно приводить параметры в любом порядке.

Командлет Clear-Content можно использовать с поставщиком файловой системы оболочки Windows PowerShell, а также с другими поставщиками, работающими с содержимым. Чтобы очистить элементы, которые не считаются содержимым, например элементы, управляемые поставщиками сертификатов и реестра Windows PowerShell, используйте командлет Clear-Item.

Командлет Clear-Content предназначен для работы с данными, предоставляемыми любым поставщиком. Чтобы получить список поставщиков, доступных в текущем сеансе, введите команду "Get-PsProvider". Дополнительные сведения см. в разделе About_Providers.

Пример 1

C:\PS>clear-content ..\SmpUsers\*\init.txt

Описание
-----------
Эта команда удаляет все содержимое файлов с именем "init.txt", содержащихся во всех вложенных каталогах каталога SmpUsers. Содержимое файлов удаляется, при этом сами файлы остаются.





Пример 2

C:\PS>clear-content -path * -filter *.log -force

Описание
-----------
Эта команда удаляет содержимое всех файлов из текущего каталога с расширением ".log", включая файлы с атрибутом "только для чтения". Звездочка (*) в пути означает все элементы из текущего каталога. Параметр Force позволяет применять команду к файлам с атрибутом "только для чтения". Использование фильтра, чтобы задать применение команды только для файлов с расширением ".log" вместо указания "*.log" в пути, повышает быстродействие команды.





Пример 3

C:\PS>clear-content c:\Temp\* -Include Smp* -Exclude *2* -whatif

Описание
-----------
Эта команда требует получить прогноз результатов выполнения команды: "clear-content c:\temp\* -include smp* -exclude *2*" Отображается список файлов, которые будут очищены. В данном случае это файлы из каталога Temp, имена которых начинаются с комбинации символов "Smp" и не содержат символ "2". Чтобы выполнить данную команду, запустите ее без указания параметра Whatif.





См. также

Концепции

about_Providers
Get-Content
Set-Content
Add-Content
Get-Item