Добавляет содержимое в заданные элементы, например слова в файл.

Синтаксис

Add-Content [-LiteralPath] <string[]> [-Value] <Object[]> [-Credential <PSCredential>] [-Exclude <string[]>] [-Filter <string>] [-Force] [-Include <string[]>] [-PassThru] [-Confirm] [-WhatIf] [-UseTransaction] [<CommonParameters>]

Add-Content [-Path] <string[]> [-Value] <Object[]> [-Credential <PSCredential>] [-Exclude <string[]>] [-Filter <string>] [-Force] [-Include <string[]>] [-PassThru] [-Confirm] [-WhatIf] [-UseTransaction] [<CommonParameters>]

Описание

Командлет Add-Content добавляет содержимое в заданный элемент или файл. Содержимое можно задать непосредственно в команде либо путем указания объекта, в котором оно хранится.

Параметры

-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

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

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

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

-PassThru

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

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

false

Позиция?

named

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

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

false

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

false

-Path <string[]>

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

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

true

Позиция?

1

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

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

true (ByPropertyName)

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

false

-Value <Object[]>

Задает добавляемое содержимое. Введите строку в кавычках, например "Эти данные предназначены только для внутреннего использования", или укажите объект с содержимым, например объект DateTime, созданный командлетом Get-Date.

Нельзя указать содержимое файла, задав путь к файлу, потому что путь является обычной строкой, однако содержимое можно получить с помощью команды Get-Content и передать его параметру Value.

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

true

Позиция?

2

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

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

true (ByValue, 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.

Ввод и вывод

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

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

System.Object

Добавляемые объекты (Value) можно передавать командлету Add-Content по конвейеру.

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

Нет или System.String

При использовании параметра Passthru командлет Add-Content создает объект System.String, представляющий содержимое. В противном случае этот командлет не формирует никаких выходных данных.

Примечания

При передаче командлету Add-Content объекта по конвейеру перед добавлением в элемент объект преобразуется в строку. Формат строки определяется типом объекта, но может отличаться от используемого по умолчанию формата отображения объекта. Для управления форматом строки используйте параметры форматирования отправляющего командлета.

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

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

Пример 1

C:\PS>add-content -path *.txt -exclude help* -value "END"

Описание
-----------
В результате выполнения данной команды во все текстовые файлы текущего каталога, кроме файлов, имена которых начинаются с "help", записывается строка "END".






Пример 2

C:\PS>add-content -Path file1.log, file2.log -Value (get-date) -passthru

Описание
-----------
В результате выполнения данной команды в конец файлов File1.log и File2.log записывается дата, которая затем отображается в командной строке. В данной команде для извлечения даты используется командлет Get-Date, затем дата передается командлету Add-Content через параметр Value. Объект, представляющий добавленное содержимое, передается дальше по конвейеру через параметр PassThru. Так как командлет, принимающий передаваемый объект, не задан, этот объект отображается в командной строке.






Пример 3

C:\PS>add-content -path monthly.txt -value (get-content c:\rec1\weekly.txt)

Описание
-----------
В результате выполнения данной команды содержимое файла Weekly.txt записывается в конец файла Monthly.txt. В данной команде для извлечения содержимого файла Weekly.txt используется командлет Get-Content, затем содержимое передается командлету Add-Content через параметр Value. Использование круглых скобок гарантирует, что командлет Add-Content начнет работу только после завершения работы Get-Content.

Также можно скопировать содержимое файла Weekly.txt в переменную, например $w, а затем с помощью параметра Value передать ее командлету Add-Content. В этом случае команда примет вид "add-content -path monthly.txt -value $w".






Пример 4

C:\PS>add-content -value (get-content test.log) -path C:\tests\test134\logs\test134.log

Описание
-----------
Эта команда создает новые каталог и файл и копирует содержимое существующего файла в созданный файл.

Для добавления содержимого в данной команде используется командлет Add-Content. Значение параметра Value представляет собой команду Get-Content, которая получает содержимое из существующего файла, Test.log. 

Значение параметра Path — это путь, который на момент запуска команды не существует. В данном примере существуют только каталоги C:\Tests. Остальные каталоги и файл Test134.log создаются командой.

Параметр Force для этой команды не требуется. Командлет Add-Content создает каталоги для завершения заданного пути даже без параметра Force.






См. также




Содержание