New-Item
Vytvoří novou položku.
Syntaxe
New-Item
[-Path] <String[]>
[-ItemType <String>]
[-Value <Object>]
[-Force]
[-Credential <PSCredential>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
New-Item
[[-Path] <String[]>]
-Name <String>
[-ItemType <String>]
[-Value <Object>]
[-Force]
[-Credential <PSCredential>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
New-Item
[-Path] <string[]>
-ConnectionURI <uri>
[-ItemType <string>]
[-Value <Object>]
[-Force]
[-Credential <pscredential>]
[-WhatIf]
[-Confirm]
[-OptionSet <hashtable>]
[-Authentication <AuthenticationMechanism>]
[-CertificateThumbprint <string>]
[-SessionOption <SessionOption>]
[-Port <int>]
[<CommonParameters>]
New-Item
[[-Path] <string[]>]
-Name <string>
[-ItemType <string>]
[-Value <Object>]
[-Force]
[-Credential <pscredential>]
[-WhatIf]
[-Confirm]
[-OptionSet <hashtable>]
[-Authentication <AuthenticationMechanism>]
[-CertificateThumbprint <string>]
[-SessionOption <SessionOption>]
[-ApplicationName <string>]
[-Port <int>]
[-UseSSL]
[<CommonParameters>]
New-Item
[-Path] <string[]>
[-ItemType <string>]
[-Value <Object>]
[-Force]
[-Credential <pscredential>]
[-WhatIf]
[-Confirm]
[-Options <ScopedItemOptions>]
[<CommonParameters>]
New-Item
[[-Path] <string[]>]
-Name <string>
[-ItemType <string>]
[-Value <Object>]
[-Force]
[-Credential <pscredential>]
[-WhatIf]
[-Confirm]
[-Options <ScopedItemOptions>]
[<CommonParameters>]
Description
Rutina New-Item
vytvoří novou položku a nastaví její hodnotu. Typy položek, které lze vytvořit, závisí na umístění položky. Například v systému New-Item
souborů vytvoří soubory a složky. V registru New-Item
vytvoří klíče registru a položky.
New-Item
může také nastavit hodnotu položek, které vytvoří. Když například vytvoří nový soubor, New-Item
může do souboru přidat počáteční obsah.
Příklady
Příklad 1: Vytvoření souboru v aktuálním adresáři
Tento příkaz vytvoří textový soubor s názvem "testfile1.txt" v aktuálním adresáři. Tečka (.) v hodnotě parametru Path označuje aktuální adresář. Text v uvozových hodnotách, který následuje za parametrem Value , se přidá do souboru jako obsah.
New-Item -Path . -Name "testfile1.txt" -ItemType "file" -Value "This is a text string."
Příklad 2: Vytvoření adresáře
Tento příkaz vytvoří na C:
jednotce adresář s názvem Logfiles. Parametr ItemType určuje, že nová položka je adresář, nikoli soubor nebo jiný objekt systému souborů.
New-Item -Path "c:\" -Name "logfiles" -ItemType "directory"
Příklad 3: Vytvoření profilu
Tento příkaz vytvoří profil PowerShellu v cestě určené proměnnou $profile
.
K přizpůsobení PowerShellu můžete použít profily. $profile
je automatická (integrovaná) proměnná, která ukládá cestu a název souboru profilu CurrentUser/CurrentHost. Ve výchozím nastavení profil neexistuje, i když PowerShell uloží cestu a název souboru.
V tomto příkazu $profile
proměnná představuje cestu k souboru. Parametr ItemType určuje, že příkaz vytvoří soubor. Parametr Force umožňuje vytvořit soubor v cestě profilu, i když adresáře v cestě neexistují.
Po vytvoření profilu můžete do profilu zadat aliasy, funkce a skripty pro přizpůsobení prostředí.
Další informace najdete v tématu about_Automatic_Variables a about_Profiles.
New-Item -Path $profile -ItemType "file" -Force
Příklad 4: Vytvoření adresáře v jiném adresáři
Tento příklad vytvoří nový adresář Scripts v adresáři C:\PS-Test.
Název nové položky adresáře "Scripts" je zahrnut v hodnotě parametru Path místo zadání v hodnotě Name. Jak je uvedeno v syntaxi, je platný formulář příkazu.
New-Item -ItemType "directory" -Path "c:\ps-test\scripts"
Příklad 5: Vytvoření více souborů
Tento příklad vytvoří soubory ve dvou různých adresářích. Vzhledem k tomu, že cesta přebírá více řetězců, můžete ji použít k vytvoření více položek.
New-Item -ItemType "file" -Path "c:\ps-test\test.txt", "c:\ps-test\Logs\test.log"
Příklad 6: Použití zástupných znaků k vytvoření souborů v několika adresářích
Rutina New-Item
podporuje zástupné cardy v parametru Path . Následující příkaz vytvoří temp.txt
soubor ve všechadresářch
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
Rutina Get-ChildItem
zobrazí v adresáři C:\Temp
tři adresáře. Pomocí zástupných New-Item
znaků rutina vytvoří temp.txt
soubor ve všech adresářích v aktuálním adresáři. Rutina New-Item
vypíše položky, které jste vytvořili, a tím se předá Select-Object
k ověření cest k nově vytvořeným souborům.
Příklad 7: Vytvoření symbolického odkazu na soubor nebo složku
Tento příklad vytvoří symbolický odkaz na soubor Notice.txt v aktuální složce.
$link = New-Item -ItemType SymbolicLink -Path .\link -Target .\Notice.txt
$link | Select-Object LinkType, Target
LinkType Target
-------- ------
SymbolicLink {.\Notice.txt}
V tomto příkladu je Target aliasem pro parametr Value . Cílem symbolického odkazu může být relativní cesta. Před PowerShellem v6.2 musí být cílem plně kvalifikovaná cesta.
Počínaje PowerShellem 7.1 teď můžete vytvořit symbolický odkaz na složku ve Windows pomocí relativní cesty.
Příklad 8: Použití parametru -Force k pokusu o opětovné vytvoření složek
Tento příklad vytvoří složku se souborem uvnitř. Pak se pokusí vytvořit stejnou složku pomocí -Force
. Nepřepíše složku, ale jednoduše vrátí existující objekt složky se souborem vytvořeným beze změny.
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
Příklad 9: Použití parametru -Force k přepsání existujících souborů
Tento příklad vytvoří soubor s hodnotou a pak znovu vytvoří soubor pomocí -Force
. Tím se stávající soubor přepíše, jak je vidět podle vlastnosti délky.
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
Poznámka:
Při použití New-Item
s -Force
přepínačem k vytvoření klíčů registru se příkaz bude chovat stejně jako při přepsání souboru. Pokud klíč registru již existuje, klíč a všechny vlastnosti a hodnoty budou přepsány prázdným klíčem registru.
Parametry
-ApplicationName
Jedná se o dynamický parametr, který zpřístupnil zprostředkovatel WSMan . Zprostředkovatel WSMan a tento parametr jsou k dispozici pouze ve Windows.
Určuje název aplikace v připojení. Výchozí hodnota parametru ApplicationName je WSMAN.
Další informace naleznete v tématu New-WSManInstance.
Typ: | String |
Position: | Named |
Default value: | None |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-Authentication
Jedná se o dynamický parametr, který zpřístupnil zprostředkovatel WSMan . Zprostředkovatel WSMan a tento parametr jsou k dispozici pouze ve Windows.
Určuje mechanismus ověřování, který se má použít na serveru.
Další informace naleznete v tématu New-WSManInstance.
Typ: | AuthenticationMechanism |
Position: | Named |
Default value: | None |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-CertificateThumbprint
Jedná se o dynamický parametr, který zpřístupnil zprostředkovatel WSMan . Zprostředkovatel WSMan a tento parametr jsou k dispozici pouze ve Windows.
Určuje certifikát digitálního veřejného klíče (X509) uživatelského účtu, který má oprávnění k provedení této akce WSMan. Zadejte kryptografický otisk certifikátu.
Další informace naleznete v tématu New-WSManInstance.
Typ: | String |
Position: | Named |
Default value: | None |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-Confirm
Před spuštěním rutiny zobrazí výzvu k potvrzení.
Typ: | SwitchParameter |
Aliasy: | cf |
Position: | Named |
Default value: | False |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-ConnectionURI
Jedná se o dynamický parametr, který zpřístupnil zprostředkovatel WSMan . Zprostředkovatel WSMan a tento parametr jsou k dispozici pouze ve Windows.
Určuje koncový bod připojení pro WSMan.
Další informace naleznete v tématu New-WSManInstance.
Typ: | Uri |
Position: | Named |
Default value: | None |
Vyžadováno: | True |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-Credential
Poznámka:
Tento parametr nejsou podporovány žádnými poskytovateli nainstalovanými v PowerShellu. Pokud chcete při spuštění této rutiny zosobnit jiného uživatele nebo zvýšit úroveň přihlašovacích údajů, použijte Invoke-Command
.
Typ: | PSCredential |
Position: | Named |
Default value: | Current user |
Vyžadováno: | False |
Přijmout vstup kanálu: | True |
Přijmout zástupné znaky: | False |
-Force
Vynutí tuto rutinu, aby vytvořila položku, která zapisuje existující položku jen pro čtení. Implementace se liší od zprostředkovatele po zprostředkovatele. I pomocí parametru Force nemůže rutina přepsat omezení zabezpečení.
Počínaje PowerShellem 7.4 tento parametr také umožňuje přepsat existující spojení. Dříve se to nepovede s chybou "nelze odebrat, protože není prázdná".
Typ: | SwitchParameter |
Position: | Named |
Default value: | None |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-ItemType
Určuje typ nové položky zadaný zprostředkovatelem. Dostupné hodnoty tohoto parametru závisí na aktuálním poskytovateli, který používáte.
Pokud je vaše umístění na jednotce FileSystem
, jsou povoleny následující hodnoty:
File
Directory
SymbolicLink
Junction
HardLink
Poznámka:
Vytvoření SymbolicLink
typu ve Windows vyžaduje zvýšení oprávnění jako správce. Windows 10 (build 14972 nebo novější) s povoleným režimem vývojáře už ale nevyžaduje zvýšení oprávnění vytvářet symbolické odkazy.
Certificate
Na jednotce můžete zadat tyto hodnoty:
Certificate Provider
Certificate
Store
StoreLocation
Další informace najdete v tématu about_Providers.
Typ: | String |
Aliasy: | Type |
Position: | Named |
Default value: | None |
Vyžadováno: | False |
Přijmout vstup kanálu: | True |
Přijmout zástupné znaky: | False |
-Name
Určuje název nové položky. Název nové položky můžete zadat v hodnotě parametru Název nebo Cesta a můžete zadat cestu nové položky v poli Název nebo Cesta. Názvy položek předané pomocí parametru Name se vytvoří vzhledem k hodnotě parametru Path .
Typ: | String |
Position: | Named |
Default value: | None |
Vyžadováno: | True |
Přijmout vstup kanálu: | True |
Přijmout zástupné znaky: | False |
-Options
Toto je dynamický parametr zpřístupněný poskytovatelem aliasu. Další informace najdete v tématu Nový alias.
Určuje hodnotu vlastnosti Options aliasu.
Platné hodnoty jsou:
None
: Alias nemá žádná omezení (výchozí hodnota)ReadOnly
: Alias lze odstranit, ale nejde ho změnit bez použití parametru Force .Constant
: Alias nejde odstranit ani změnit.Private
: Alias je k dispozici pouze v aktuálním oboru.AllScope
: Alias se zkopíruje do všech nově vytvořených oborů.Unspecified
: Možnost není zadána.
Typ: | ScopedItemOptions |
Position: | Named |
Default value: | None |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-OptionSet
Jedná se o dynamický parametr, který zpřístupnil zprostředkovatel WSMan . Zprostředkovatel WSMan a tento parametr jsou k dispozici pouze ve Windows.
Předá sadu přepínačů službě, která upraví nebo upřesní povahu požadavku.
Další informace naleznete v tématu New-WSManInstance.
Typ: | Hashtable |
Aliasy: | OS |
Position: | Named |
Default value: | None |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-Path
Určuje cestu umístění nové položky. Výchozí hodnota je aktuální umístění, pokud je vynechána cesta . Název nové položky můžete zadat v poli Název nebo ho zahrnout do cesty. Názvy položek předané pomocí parametru Name se vytvoří vzhledem k hodnotě parametru Path .
Pro tuto rutinu funguje parametr Path jako parametr LiteralPath jiných rutin.
Zástupné znaky nejsou interpretovány. Všechny znaky se předávají poskytovateli umístění. Zprostředkovatel nemusí podporovat všechny znaky. Nemůžete například vytvořit název souboru, který obsahuje znak hvězdičky (*
).
Typ: | String[] |
Position: | 0 |
Default value: | Current location |
Vyžadováno: | False |
Přijmout vstup kanálu: | True |
Přijmout zástupné znaky: | False |
-Port
Jedná se o dynamický parametr, který zpřístupnil zprostředkovatel WSMan . Zprostředkovatel WSMan a tento parametr jsou k dispozici pouze ve Windows.
Určuje port, který se má použít, když se klient připojí ke službě WinRM.
Další informace naleznete v tématu New-WSManInstance.
Typ: | Int32 |
Position: | Named |
Default value: | None |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-SessionOption
Jedná se o dynamický parametr, který zpřístupnil zprostředkovatel WSMan . Zprostředkovatel WSMan a tento parametr jsou k dispozici pouze ve Windows.
Definuje sadu rozšířených možností pro relaci WS-Management.
Další informace naleznete v tématu New-WSManInstance.
Typ: | SessionOption |
Aliasy: | SO |
Position: | Named |
Default value: | None |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-UseSSL
Jedná se o dynamický parametr, který zpřístupnil zprostředkovatel WSMan . Zprostředkovatel WSMan a tento parametr jsou k dispozici pouze ve Windows.
Určuje, že protokol SSL (Secure Sockets Layer) by se měl použít k navázání připojení ke vzdálenému počítači. Ve výchozím nastavení se ssl nepoužívá.
Další informace naleznete v tématu New-WSManInstance.
Typ: | SwitchParameter |
Position: | Named |
Default value: | None |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-Value
Určuje hodnotu nové položky. Hodnotu můžete také převést na New-Item
hodnotu .
Typ: | Object |
Aliasy: | Target |
Position: | Named |
Default value: | None |
Vyžadováno: | False |
Přijmout vstup kanálu: | True |
Přijmout zástupné znaky: | False |
-WhatIf
Zobrazuje, co by se stalo při spuštění rutiny. Rutina se nespustí.
Typ: | SwitchParameter |
Aliasy: | wi |
Position: | Named |
Default value: | False |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
Vstupy
Do této rutiny můžete přidat hodnotu nové položky.
Výstupy
Rutina vrátí objekt DictionaryEntry při vytváření nové proměnné prostředí.
Rutina vrátí objekt DirectoryInfo při vytváření nového adresáře v systému souborů.
Rutina vrátí objekt FileInfo při vytváření nového souboru v systému souborů.
Rutina při vytváření nového aliasu vrátí objekt AliasInfo .
Rutina vrátí objekt FunctionInfo při vytváření nové funkce.
Rutina vrátí objekt PSVariable při vytváření nové proměnné.
Poznámky
PowerShell obsahuje následující aliasy pro New-Item
:
- Všechny platformy:
ni
New-Item
je navržený tak, aby fungoval s daty vystavenými jakýmkoli poskytovatelem. Pokud chcete zobrazit seznam poskytovatelů dostupných v relaci, zadejte Get-PsProvider
. Další informace najdete v tématu about_Providers.