Sdílet prostřednictvím


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.