New-Item
Создает новый элемент.
Синтаксис
pathSet (Default) - All providers
New-Item
[-Path] <string[]>
[-ItemType <string>]
[-Value <Object>]
[-Force]
[-Credential <pscredential>]
[-WhatIf]
[-Confirm]
[-UseTransaction]
[<CommonParameters>]
nameSet - All providers
New-Item
[[-Path] <string[]>]
-Name <string>
[-ItemType <string>]
[-Value <Object>]
[-Force]
[-Credential <pscredential>]
[-WhatIf]
[-Confirm]
[-UseTransaction]
[<CommonParameters>]
pathSet (Default) - WSMan provider
New-Item
[-Path] <string[]>
-ConnectionURI <uri>
[-ItemType <string>]
[-Value <Object>]
[-Force]
[-Credential <pscredential>]
[-WhatIf]
[-Confirm]
[-UseTransaction]
[-OptionSet <hashtable>]
[-Authentication <AuthenticationMechanism>]
[-CertificateThumbprint <string>]
[-SessionOption <SessionOption>]
[-Port <int>]
[<CommonParameters>]
nameSet - WSMan provider
New-Item
[[-Path] <string[]>]
-Name <string>
[-ItemType <string>]
[-Value <Object>]
[-Force]
[-Credential <pscredential>]
[-WhatIf]
[-Confirm]
[-UseTransaction]
[-OptionSet <hashtable>]
[-Authentication <AuthenticationMechanism>]
[-CertificateThumbprint <string>]
[-SessionOption <SessionOption>]
[-ApplicationName <string>]
[-Port <int>]
[-UseSSL]
[<CommonParameters>]
pathSet (По умолчанию)
New-Item
[-Path] <string[]>
[-ItemType <string>]
[-Value <Object>]
[-Force]
[-Credential <pscredential>]
[-WhatIf]
[-Confirm]
[-UseTransaction]
[-Options <ScopedItemOptions>]
[<CommonParameters>]
nameSet
New-Item
[[-Path] <string[]>]
-Name <string>
[-ItemType <string>]
[-Value <Object>]
[-Force]
[-Credential <pscredential>]
[-WhatIf]
[-Confirm]
[-UseTransaction]
[-Options <ScopedItemOptions>]
[<CommonParameters>]
Описание
Командлет New-Item создает новый элемент и задает его значение. Типы элементов, которые можно создать, зависят от расположения элемента. Например, в файловой системе New-Item создавать файлы и папки. В реестре New-Item создает разделы и записи реестра.
New-Item также может задать значение создаваемых элементов. Например, при создании нового файла New-Item может добавить исходное содержимое в файл.
Примеры
Пример 1. Создание файла в текущем каталоге
Эта команда создает текстовый файл с именем "testfile1.txt" в текущем каталоге. Точка ('.') в значении параметра Path указывает текущий каталог. Приведенный в кавычки текст, следующий за параметром значения
New-Item -Path . -Name "testfile1.txt" -ItemType "File" -Value "This is a text string."
Пример 2. Создание каталога
Эта команда создает каталог с именем Logfiles на диске C:. Параметр ItemType указывает, что новый элемент является каталогом, а не файлом или другим объектом файловой системы.
New-Item -Path "C:\" -Name "logfiles" -ItemType "Directory"
Пример 3. Создание профиля
Эта команда создает профиль PowerShell в пути, указанном переменной $PROFILE.
Профили можно использовать для настройки PowerShell.
$PROFILE — это автоматическая (встроенная) переменная, которая хранит путь и имя файла профиля CurrentUser/CurrentHost. По умолчанию профиль не существует, даже если PowerShell хранит путь и имя файла для него.
В этой команде переменная $PROFILE представляет путь к файлу. параметр ItemType указывает, что команда создает файл. Параметр Force позволяет создать файл в пути профиля, даже если каталоги в пути не существуют.
После создания профиля можно ввести псевдонимы, функции и скрипты в профиле, чтобы настроить оболочку.
Дополнительные сведения см. в about_Automatic_Variables и about_Profiles.
New-Item -Path $PROFILE -ItemType "File" -Force
Замечание
При создании файла с помощью этого метода результирующий файл закодирован как UTF-8 без байтовой метки (BOM).
Пример 4. Создание каталога в другом каталоге
В этом примере создается новый каталог скриптов в каталоге C:\PS-Test.
Имя нового элемента каталога "Скрипты" включается в значение параметра Path, а не указано в значении Name. Как указано в синтаксисе, любая форма команды допустима.
New-Item -ItemType "Directory" -Path "C:\ps-test\scripts"
Пример 5. Создание нескольких файлов
В этом примере создаются файлы в двух разных каталогах. Так как пути
New-Item -ItemType "File" -Path "C:\ps-test\test.txt", "C:\ps-test\Logs\test.log"
Пример 6. Использование подстановочных знаков для создания файлов в нескольких каталогах
Командлет New-Item поддерживает подстановочные знаки в параметре Path. Следующая команда создает файл temp.txt во всех каталогах, указанных подстановочными знаками в параметре пути.
Get-ChildItem -Path C:\Temp\
Directory: C:\Temp
Mode LastWriteTime Length Name
---- ------------- ------ ----
d----- 5/15/2019 6:45 AM 1 One
d----- 5/15/2019 6:45 AM 1 Two
d----- 5/15/2019 6:45 AM 1 Three
New-Item -Path C:\Temp\* -Name temp.txt -ItemType File | Select-Object FullName
FullName
--------
C:\Temp\One\temp.txt
C:\Temp\Three\temp.txt
C:\Temp\Two\temp.txt
Командлет Get-ChildItem отображает три каталога в каталоге C:\Temp. С помощью подстановочных знаков командлет New-Item создает файл temp.txt во всех каталогах в текущем каталоге. Командлет New-Item выводит созданные элементы, которые передаются в Select-Object для проверки путей только что созданных файлов.
Пример 7. Создание символьной ссылки на файл или папку
В этом примере создается символьная ссылка на файл Notice.txt в текущей папке.
$link = New-Item -ItemType SymbolicLink -Path .\link -Target .\Notice.txt
$link | Select-Object LinkType, Target
LinkType Target
-------- ------
SymbolicLink {.\Notice.txt}
В этом примере Target является псевдонимом параметра значения. Цель символьной ссылки должна быть полным путем.
Пример 8. Использование параметра -Force для повторного создания папок
В этом примере создается папка с файлом внутри. Затем пытается создать ту же папку с помощью -Force. Он не перезаписывает папку, но просто возвращает существующий объект папки с созданным нетронутым файлом.
PS> New-Item -Path .\TestFolder -ItemType Directory
PS> New-Item -Path .\TestFolder\TestFile.txt -ItemType File
PS> New-Item -Path .\TestFolder -ItemType Directory -Force
Directory: C:\
Mode LastWriteTime Length Name
---- ------------- ------ ----
d----- 5/1/2020 8:03 AM TestFolder
PS> Get-ChildItem .\TestFolder\
Directory: C:\TestFolder
Mode LastWriteTime Length Name
---- ------------- ------ ----
-a---- 5/1/2020 8:03 AM 0 TestFile.txt
Пример 9. Использование параметра -Force для перезаписи существующих файлов
В этом примере создается файл со значением, а затем создается файл с помощью -Force. Это перезаписывает существующий файл, как показано свойством Length.
PS> New-Item ./TestFile.txt -ItemType File -Value 'This is just a test file'
Directory: C:\Source\Test
Mode LastWriteTime Length Name
---- ------------- ------ ----
-a---- 5/1/2020 8:32 AM 24 TestFile.txt
New-Item ./TestFile.txt -ItemType File -Force
Directory: C:\Source\Test
Mode LastWriteTime Length Name
---- ------------- ------ ----
-a---- 5/1/2020 8:32 AM 0 TestFile.txt
Замечание
При использовании New-Item с параметром -Force для создания разделов реестра команда будет вести себя так же, как при перезаписи файла. Если раздел реестра уже существует, ключ и все свойства и значения будут перезаписаны пустым разделом реестра.
Параметры
-ApplicationName
Это динамический параметр, доступный поставщиком WSMan. Поставщик WSMan и этот параметр доступен только в Windows.
Указывает имя приложения в соединении. Значением по умолчанию параметра ApplicationName является WSMAN.
Дополнительные сведения см. в разделе New-WSManInstance.
Свойства параметров
| Тип: | String |
| Default value: | None |
| Поддерживаются подстановочные знаки: | False |
| DontShow: | False |
Наборы параметров
nameSet
| Position: | Named |
| Обязательно: | False |
| Значение из конвейера: | False |
| Значение из конвейера по имени свойства: | False |
| Значение из оставшихся аргументов: | False |
-Authentication
Это динамический параметр, доступный поставщиком WSMan. Поставщик WSMan и этот параметр доступен только в Windows.
Указывает механизм проверки подлинности, используемый на сервере.
Дополнительные сведения см. в разделе New-WSManInstance.
Свойства параметров
| Тип: | AuthenticationMechanism |
| Default value: | None |
| Поддерживаются подстановочные знаки: | False |
| DontShow: | False |
Наборы параметров
(All)
| Position: | Named |
| Обязательно: | False |
| Значение из конвейера: | False |
| Значение из конвейера по имени свойства: | False |
| Значение из оставшихся аргументов: | False |
-CertificateThumbprint
Это динамический параметр, доступный поставщиком WSMan. Поставщик WSMan и этот параметр доступен только в Windows.
Указывает сертификат цифрового открытого ключа (X509) учетной записи пользователя, которая имеет разрешение на выполнение этого действия WSMan. Введите отпечаток пальца сертификата.
Дополнительные сведения см. в разделе New-WSManInstance.
Свойства параметров
| Тип: | String |
| Default value: | None |
| Поддерживаются подстановочные знаки: | False |
| DontShow: | False |
Наборы параметров
(All)
| Position: | Named |
| Обязательно: | False |
| Значение из конвейера: | False |
| Значение из конвейера по имени свойства: | False |
| Значение из оставшихся аргументов: | False |
-Confirm
Запрашивает подтверждение перед запуском cmdlet.
Свойства параметров
| Тип: | SwitchParameter |
| Default value: | False |
| Поддерживаются подстановочные знаки: | False |
| DontShow: | False |
| Aliases: | cf |
Наборы параметров
(All)
| Position: | Named |
| Обязательно: | False |
| Значение из конвейера: | False |
| Значение из конвейера по имени свойства: | False |
| Значение из оставшихся аргументов: | False |
-ConnectionURI
Это динамический параметр, доступный поставщиком WSMan. Поставщик WSMan и этот параметр доступен только в Windows.
Указывает конечную точку подключения для WSMan.
Дополнительные сведения см. в разделе New-WSManInstance.
Свойства параметров
| Тип: | Uri |
| Default value: | None |
| Поддерживаются подстановочные знаки: | False |
| DontShow: | False |
Наборы параметров
pathSet
| Position: | Named |
| Обязательно: | True |
| Значение из конвейера: | False |
| Значение из конвейера по имени свойства: | False |
| Значение из оставшихся аргументов: | False |
-Credential
Замечание
Этот параметр не поддерживается поставщиками, установленными с помощью PowerShell. Чтобы олицетворить другого пользователя или повысить свои учетные данные при выполнении этого командлета, используйте Invoke-Command.
Свойства параметров
| Тип: | PSCredential |
| Default value: | Current user |
| Поддерживаются подстановочные знаки: | False |
| DontShow: | False |
Наборы параметров
(All)
| Position: | Named |
| Обязательно: | False |
| Значение из конвейера: | False |
| Значение из конвейера по имени свойства: | True |
| Значение из оставшихся аргументов: | False |
-Force
Принудительно создает этот командлет для создания элемента, записываемого по существующему элементу только для чтения. Реализация зависит от поставщика к поставщику. Даже при использовании параметра Force командлет не может обойти ограничения безопасности.
Вы не можете использовать принудительное перезапись существующего соединения. Пытается перезаписать существующий сбой соединения с ошибкой "не удается удалить, так как она не пуста". Перед созданием нового необходимо удалить существующее соединение.
Свойства параметров
| Тип: | SwitchParameter |
| Default value: | None |
| Поддерживаются подстановочные знаки: | False |
| DontShow: | False |
Наборы параметров
(All)
| Position: | Named |
| Обязательно: | False |
| Значение из конвейера: | False |
| Значение из конвейера по имени свойства: | False |
| Значение из оставшихся аргументов: | False |
-ItemType
Указывает указанный поставщиком тип нового элемента. Доступные значения этого параметра зависят от используемого текущего поставщика.
Если ваше расположение находится на диске FileSystem, допустимы следующие значения:
FileDirectorySymbolicLinkJunctionHardLink
При создании файла с помощью этого метода результирующий файл закодирован как UTF-8 без байтовой метки (BOM).
На диске Certificate это значения, которые можно указать:
Certificate ProviderCertificateStoreStoreLocation
Дополнительные сведения см. в about_Providers.
Свойства параметров
| Тип: | String |
| Default value: | None |
| Поддерживаются подстановочные знаки: | False |
| DontShow: | False |
| Aliases: | Тип |
Наборы параметров
(All)
| Position: | Named |
| Обязательно: | False |
| Значение из конвейера: | False |
| Значение из конвейера по имени свойства: | True |
| Значение из оставшихся аргументов: | False |
-Name
Задает имя нового элемента. Вы можете указать имя нового элемента в значении параметра
Свойства параметров
| Тип: | String |
| Default value: | None |
| Поддерживаются подстановочные знаки: | False |
| DontShow: | False |
Наборы параметров
nameSet
| Position: | Named |
| Обязательно: | True |
| Значение из конвейера: | False |
| Значение из конвейера по имени свойства: | True |
| Значение из оставшихся аргументов: | False |
-Options
Это динамический параметр, доступный поставщиком псевдонимов. Дополнительные сведения см. в new-Alias.
Указывает значение свойства Options псевдонима.
Допустимые значения:
-
None: псевдоним не имеет ограничений (значение по умолчанию) -
ReadOnly: псевдоним можно удалить, но не может быть изменен без использования параметра Force -
Constant: псевдоним нельзя удалить или изменить -
Private: Этот псевдоним доступен только в текущей области -
AllScope: псевдоним копируется в любые новые области, которые создаются -
Unspecified: параметр не указан
Свойства параметров
| Тип: | ScopedItemOptions |
| Default value: | None |
| Поддерживаются подстановочные знаки: | False |
| DontShow: | False |
Наборы параметров
(All)
| Position: | Named |
| Обязательно: | False |
| Значение из конвейера: | False |
| Значение из конвейера по имени свойства: | False |
| Значение из оставшихся аргументов: | False |
-OptionSet
Это динамический параметр, доступный поставщиком WSMan. Поставщик WSMan и этот параметр доступен только в Windows.
Передает набор коммутаторов в службу для изменения или уточнения характера запроса.
Дополнительные сведения см. в разделе New-WSManInstance.
Свойства параметров
| Тип: | Hashtable |
| Default value: | None |
| Поддерживаются подстановочные знаки: | False |
| DontShow: | False |
| Aliases: | ОС |
Наборы параметров
(All)
| Position: | Named |
| Обязательно: | False |
| Значение из конвейера: | False |
| Значение из конвейера по имени свойства: | False |
| Значение из оставшихся аргументов: | False |
-Path
Указывает путь к расположению нового элемента. По умолчанию используется текущее расположение, если путь опущен. Можно указать имя нового элемента вимени
Для этого командлета параметр пути работает как параметр LiteralPath других командлетов.
Подстановочные знаки не интерпретируются. Все символы передаются поставщику расположения. Поставщик может не поддерживать все символы. Например, нельзя создать имя файла, содержащее символ звездочки (*) .
Свойства параметров
| Тип: | String[] |
| Default value: | Current location |
| Поддерживаются подстановочные знаки: | False |
| DontShow: | False |
Наборы параметров
pathSet
| Position: | 0 |
| Обязательно: | True |
| Значение из конвейера: | False |
| Значение из конвейера по имени свойства: | True |
| Значение из оставшихся аргументов: | False |
nameSet
| Position: | 0 |
| Обязательно: | False |
| Значение из конвейера: | False |
| Значение из конвейера по имени свойства: | True |
| Значение из оставшихся аргументов: | False |
-Port
Это динамический параметр, доступный поставщиком WSMan. Поставщик WSMan и этот параметр доступен только в Windows.
Указывает порт, используемый при подключении клиента к службе WinRM.
Дополнительные сведения см. в разделе New-WSManInstance.
Свойства параметров
| Тип: | Int32 |
| Default value: | None |
| Поддерживаются подстановочные знаки: | False |
| DontShow: | False |
Наборы параметров
(All)
| Position: | Named |
| Обязательно: | True |
| Значение из конвейера: | False |
| Значение из конвейера по имени свойства: | False |
| Значение из оставшихся аргументов: | False |
-SessionOption
Это динамический параметр, доступный поставщиком WSMan. Поставщик WSMan и этот параметр доступен только в Windows.
Определяет набор расширенных параметров для сеанса WS-Management.
Дополнительные сведения см. в разделе New-WSManInstance.
Свойства параметров
| Тип: | SessionOption |
| Default value: | None |
| Поддерживаются подстановочные знаки: | False |
| DontShow: | False |
| Aliases: | Итак |
Наборы параметров
(All)
| Position: | Named |
| Обязательно: | False |
| Значение из конвейера: | False |
| Значение из конвейера по имени свойства: | False |
| Значение из оставшихся аргументов: | False |
-UseSSL
Это динамический параметр, доступный поставщиком WSMan. Поставщик WSMan и этот параметр доступен только в Windows.
Указывает, что протокол SSL должен использоваться для установления подключения к удаленному компьютеру. По умолчанию SSL не используется.
Дополнительные сведения см. в разделе New-WSManInstance.
Свойства параметров
| Тип: | SwitchParameter |
| Default value: | None |
| Поддерживаются подстановочные знаки: | False |
| DontShow: | False |
Наборы параметров
nameSet
| Position: | Named |
| Обязательно: | False |
| Значение из конвейера: | False |
| Значение из конвейера по имени свойства: | False |
| Значение из оставшихся аргументов: | False |
-UseTransaction
Включает команду в активную транзакцию. Этот параметр действителен только в том случае, если выполняется транзакция. Дополнительные сведения см. в about_Transactions.
Свойства параметров
| Тип: | SwitchParameter |
| Default value: | False |
| Поддерживаются подстановочные знаки: | False |
| DontShow: | False |
| Aliases: | usetx |
Наборы параметров
(All)
| Position: | Named |
| Обязательно: | False |
| Значение из конвейера: | False |
| Значение из конвейера по имени свойства: | False |
| Значение из оставшихся аргументов: | False |
-Value
Указывает значение нового элемента. Можно также передать значение в New-Item.
Свойства параметров
| Тип: | Object |
| Default value: | None |
| Поддерживаются подстановочные знаки: | False |
| DontShow: | False |
| Aliases: | Цель |
Наборы параметров
(All)
| Position: | Named |
| Обязательно: | False |
| Значение из конвейера: | True |
| Значение из конвейера по имени свойства: | True |
| Значение из оставшихся аргументов: | False |
-WhatIf
Показывает, что произойдет, если командлет будет запущен. Командлет не выполняется.
Свойства параметров
| Тип: | SwitchParameter |
| Default value: | False |
| Поддерживаются подстановочные знаки: | False |
| DontShow: | False |
| Aliases: | wi |
Наборы параметров
(All)
| Position: | Named |
| Обязательно: | False |
| Значение из конвейера: | False |
| Значение из конвейера по имени свойства: | False |
| Значение из оставшихся аргументов: | False |
CommonParameters
Этот командлет поддерживает общие параметры: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction и -WarningVariable. Дополнительные сведения см. в разделе about_CommonParameters.
Входные данные
Object
Можно передать значение нового элемента в этот командлет.
Выходные данные
DictionaryEntry
Командлет возвращает объект DictionaryEntry при создании новой переменной среды.
DirectoryInfo
Командлет возвращает объект DirectoryInfo при создании нового каталога в файловой системе.
FileInfo
Командлет возвращает объект FileInfo при создании нового файла в файловой системе.
AliasInfo
Командлет возвращает объект AliasInfo при создании нового псевдонима.
FunctionInfo
Командлет возвращает объект FunctionInfo при создании новой функции.
PSVariable
Командлет возвращает объект PSVariable при создании новой переменной.
Примечания
Windows PowerShell включает следующие псевдонимы для New-Item:
ni
New-Item предназначен для работы с данными, предоставляемыми любым поставщиком. Чтобы вывести список поставщиков, доступных в сеансе, введите Get-PSProvider. Дополнительные сведения см. в разделе о поставщиках.