New-Item
Vytvoří novou položku.
Syntax
pathSet (Výchozí)
New-Item
[-Path] <String[]>
[-ItemType <String>]
[-Value <Object>]
[-Force]
[-Credential <PSCredential>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
nameSet
New-Item
[[-Path] <String[]>]
-Name <String>
[-ItemType <String>]
[-Value <Object>]
[-Force]
[-Credential <PSCredential>]
[-WhatIf]
[-Confirm]
[<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 souborů New-Item vytváří 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, 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ří adresář s názvem Logfiles na jednotce C:. 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.
ItemType parametr 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 součástí hodnoty 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. Protož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ří soubor temp.txt ve všech adresářích určených zástupnými cardy v parametru Path.
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 zobrazuje tři adresáře v adresáři C:\Temp. Pomocí zástupných znaků vytvoří rutina New-Item soubor temp.txt ve všech adresářích v aktuálním adresáři. Rutina New-Item výstupem položek, které jste vytvořili, 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 Target je alias parametru 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 do složky 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ř. Potom 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 přepíše existující soubor a ztratí svůj obsah, jak můžete vidět na vlastnosti 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
Poznámka:
Při použití New-Item s přepínačem -Force 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
-Confirm
Před spuštěním cmdletu vás vyzve k potvrzení.
Vlastnosti parametru
| Typ: | SwitchParameter |
| Default value: | False |
| Podporuje zástupné znaky: | False |
| DontShow: | False |
| Aliasy: | viz |
Sady parametrů
(All)
| Position: | Named |
| Povinné: | False |
| Hodnota z kanálu: | False |
| Hodnota z kanálu podle názvu vlastnosti: | False |
| Hodnota ze zbývajících argumentů: | 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 oprávnění, použijte Invoke-Command.
Vlastnosti parametru
| Typ: | PSCredential |
| Default value: | Current user |
| Podporuje zástupné znaky: | False |
| DontShow: | False |
Sady parametrů
(All)
| Position: | Named |
| Povinné: | False |
| Hodnota z kanálu: | False |
| Hodnota z kanálu podle názvu vlastnosti: | True |
| Hodnota ze zbývajících argumentů: | 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 při použití parametru Force nemůže rutina přepsat omezení zabezpečení.
Vlastnosti parametru
| Typ: | SwitchParameter |
| Default value: | None |
| Podporuje zástupné znaky: | False |
| DontShow: | False |
Sady parametrů
(All)
| Position: | Named |
| Povinné: | False |
| Hodnota z kanálu: | False |
| Hodnota z kanálu podle názvu vlastnosti: | False |
| Hodnota ze zbývajících argumentů: | 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
- Adresář
- Symbolický odkaz
- Křižovatka
- Pevný odkaz
Poznámka:
Vytvoření typu SymbolicLink 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.
V jednotce Certificate můžete zadat tyto hodnoty:
- Zprostředkovatel certifikátů
- Certifikát
- Store
- StoreLocation
Další informace naleznete v tématu about_Providers.
Vlastnosti parametru
| Typ: | String |
| Default value: | None |
| Podporuje zástupné znaky: | False |
| DontShow: | False |
| Aliasy: | Typ |
Sady parametrů
(All)
| Position: | Named |
| Povinné: | False |
| Hodnota z kanálu: | False |
| Hodnota z kanálu podle názvu vlastnosti: | True |
| Hodnota ze zbývajících argumentů: | False |
-Name
Určuje název nové položky. Název nové položky můžete zadat v Name nebo Path hodnotu parametru a můžete zadat cestu nové položky v Name nebo Path hodnotu. Názvy položek předané pomocí parametru Name se vytvoří vzhledem k hodnotě parametru Path.
Vlastnosti parametru
| Typ: | String |
| Default value: | None |
| Podporuje zástupné znaky: | False |
| DontShow: | False |
Sady parametrů
nameSet
| Position: | Named |
| Povinné: | True |
| Hodnota z kanálu: | False |
| Hodnota z kanálu podle názvu vlastnosti: | True |
| Hodnota ze zbývajících argumentů: | False |
-Path
Určuje cestu umístění nové položky. Výchozí hodnota je aktuální umístění, pokud cesta vynechá. Název nové položky můžete zadat v Názevnebo jej zahrnout do Cesta. 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 (*).
Vlastnosti parametru
| Typ: | String[] |
| Default value: | Current location |
| Podporuje zástupné znaky: | False |
| DontShow: | False |
Sady parametrů
pathSet
| Position: | 0 |
| Povinné: | True |
| Hodnota z kanálu: | False |
| Hodnota z kanálu podle názvu vlastnosti: | True |
| Hodnota ze zbývajících argumentů: | False |
-Value
Určuje hodnotu nové položky. Hodnotu můžete také pipetovat do New-Item.
Vlastnosti parametru
| Typ: | Object |
| Default value: | None |
| Podporuje zástupné znaky: | False |
| DontShow: | False |
| Aliasy: | Cíl |
Sady parametrů
(All)
| Position: | Named |
| Povinné: | False |
| Hodnota z kanálu: | True |
| Hodnota z kanálu podle názvu vlastnosti: | True |
| Hodnota ze zbývajících argumentů: | False |
-WhatIf
Ukazuje, co se stane, když se příkaz spustí. Příkazový modul nebyl spuštěn.
Vlastnosti parametru
| Typ: | SwitchParameter |
| Default value: | False |
| Podporuje zástupné znaky: | False |
| DontShow: | False |
| Aliasy: | Wi |
Sady parametrů
(All)
| Position: | Named |
| Povinné: | False |
| Hodnota z kanálu: | False |
| Hodnota z kanálu podle názvu vlastnosti: | False |
| Hodnota ze zbývajících argumentů: | False |
CommonParameters
Tato rutina podporuje běžné parametry: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction a -WarningVariable. Další informace najdete v about_CommonParameters.
Vstupy
Object
Do této rutiny můžete přidat hodnotu nové položky.
Výstupy
Object
Tato rutina vrátí položku, kterou vytvoří.
Poznámky
New-Item je navržená tak, aby fungovala s daty vystavenými libovolným poskytovatelem. Chcete-li zobrazit seznam poskytovatelů dostupných ve vaší relaci, napište Get-PsProvider. Pro více informací viz about_Providers.