Rename-Item

Přejmenuje položku v oboru názvů zprostředkovatele PowerShellu.

Syntax

ByPath (Výchozí)

Rename-Item
    [-Path] <String>
    [-NewName] <String>
    [-Force]
    [-PassThru]
    [-Credential <PSCredential>]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

ByLiteralPath

Rename-Item
    [-NewName] <String>
    -LiteralPath <String>
    [-Force]
    [-PassThru]
    [-Credential <PSCredential>]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

Description

Rutina Rename-Item změní název zadané položky. Tato rutina nemá vliv na obsah přejmenované položky.

K přesunutí položky nemůžete použít Rename-Item, například zadáním cesty spolu s novým názvem. K přesunutí a přejmenování položky použijte rutinu Move-Item.

Nemůžete použít Rename-Item k nahrazení existující položky, například přejmenování log_new.txt na log_current.txt existující položku, pokud log_current.txt již existuje. Pokud chcete nahradit existující položku, použijte rutinu Move-Item s parametrem Force .

Příklady

Příklad 1: Přejmenování souboru

Tento příkaz přejmenuje soubor daily_file.txt na monday_file.txt.

Rename-Item -Path "C:\logfiles\daily_file.txt" -NewName "monday_file.txt"

Příklad 2: Přejmenování a přesunutí položky

K přejmenování a přesunutí položky nemůžete použít Rename-Item. Konkrétně nemůžete zadat cestu pro hodnotu parametru NewName, pokud není cesta identická s cestou zadanou v parametru Path. V opačném případě je povolený jenom nový název.

Rename-Item -Path "project.txt" -NewName "D:\archive\old-project.txt"
Rename-Item : can't rename because the target specified represents a path or device name.
At line:1 char:12
+ Rename-Item <<<<  -Path project.txt -NewName D:\archive\old-project.txt
+ CategoryInfo          : InvalidArgument: (:) [Rename-Item], PS>  Move-Item -Path "project.txt" -De
stination "D:\archive\old-project.txt"

Tento příklad se pokusí přejmenovat soubor project.txt v aktuálním adresáři tak, aby old-project.txt v adresáři D:\Archive. Výsledkem je chyba zobrazená ve výstupu.

Místo toho použijte rutinu Move-Item.

Příklad 3: Přejmenování klíče registru

Tento příklad přejmenuje klíč registru z Advertising na Marketing. Po dokončení příkazu se klíč přejmenuje, ale položky registru v klíči se nezmění.

Rename-Item -Path "HKLM:\Software\MyCompany\Advertising" -NewName "Marketing"

Příklad 4: Přejmenování více souborů

Tento příklad přejmenuje všechny soubory *.txt v aktuálním adresáři na *.log.

Get-ChildItem *.txt
    Directory: C:\temp\files

Mode                LastWriteTime         Length Name
----                -------------         ------ ----
-a----        10/3/2019   7:47 AM           2918 Friday.TXT
-a----        10/3/2019   7:46 AM           2918 Monday.Txt
-a----        10/3/2019   7:47 AM           2918 Wednesday.txt
Get-ChildItem *.txt | Rename-Item -NewName { $_.Name -replace '.txt','.log' }
Get-ChildItem *.log
    Directory: C:\temp\files

Mode                LastWriteTime         Length Name
----                -------------         ------ ----
-a----        10/3/2019   7:47 AM           2918 Friday.log
-a----        10/3/2019   7:46 AM           2918 Monday.log
-a----        10/3/2019   7:47 AM           2918 Wednesday.log

Rutina Get-ChildItem získá všechny soubory v aktuální složce, které mají .txt příponu souboru, a pak je předá do Rename-Item. Hodnota NewName je skriptblock, který se spustí před odesláním hodnoty do parametru NewName .

Ve skriptublock $_ představuje automatická proměnná každý objekt souboru, protože jde o příkaz prostřednictvím kanálu. Scriptblock používá -replace operátor k nahrazení přípony souboru každého souboru .log. Všimněte si, že porovnávání pomocí operátoru -replace nerozlišuje malá a velká písmena.

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 zosobnit jiného uživatele nebo zvýšit oprávnění při spuštění této rutiny, 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í rutinu přejmenovat položky, které se jinak nedají změnit, například skryté nebo jen pro čtení nebo aliasy nebo proměnné jen pro čtení. Cmdlet nemůže měnit konstantní aliasy ani proměnné. Implementace se liší od zprostředkovatele po zprostředkovatele. Pro více informací viz about_Providers.

I pomocí parametru Force nemůže rutina přepsat omezení zabezpečení ani nahradit existující položku v názvu cíle určeném rutinou NewName.

Vlastnosti parametru

Typ:SwitchParameter
Default value:False
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

-LiteralPath

Určuje cestu k jednomu nebo více místům. Hodnota LiteralPath se používá přesně tak, jak je zadána. Žádný znak není interpretován jako zástupný znak. Pokud cesta obsahuje únikové znaky, uzavřete ji do jednoduchých uvozovek. Jednoduché uvozovky říkají PowerShellu, aby žádné znaky neinterpretoval jako únikové sekvence.

Další informace najdete v about_Quoting_Rules.

Vlastnosti parametru

Typ:String
Default value:None
Podporuje zástupné znaky:False
DontShow:False
Aliasy:PSPath, PO

Sady parametrů

ByLiteralPath
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

-NewName

Určuje nový název položky. Zadejte jenom název, nikoli cestu a název. Pokud zadáte cestu, která se liší od cesty zadané v parametru Path, Rename-Item vygeneruje chybu. Chcete-li přejmenovat a přesunout položku, použijte Move-Item.

V hodnotě parametru NewName nelze použít zástupné znaky. Pokud chcete zadat název více souborů, použijte operátor -replace v regulárním výrazu. Další informace o operátoru -replace naleznete v části about_Comparison_Operators.

Vlastnosti parametru

Typ:String
Default value:None
Podporuje zástupné znaky:False
DontShow:False

Sady parametrů

(All)
Position:1
Povinné:True
Hodnota z kanálu:False
Hodnota z kanálu podle názvu vlastnosti:True
Hodnota ze zbývajících argumentů:False

-PassThru

Vrátí objekt, který reprezentuje položku do potrubí. Ve výchozím nastavení tato rutina negeneruje žádný výstup.

Vlastnosti parametru

Typ:SwitchParameter
Default value:False
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

-Path

Určuje cestu položky k přejmenování.

Vlastnosti parametru

Typ:String
Default value:None
Podporuje zástupné znaky:False
DontShow:False

Sady parametrů

ByPath
Position:0
Povinné:True
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

String

Řetězec, který obsahuje cestu, můžete předat tomuto cmdletu.

Výstupy

None

Ve výchozím nastavení tato rutina nevrací žádný výstup.

PSObject

Pokud použijete parametr PassThru, vrátí tato rutina objekt představující přejmenovanou položku.

Poznámky

PowerShell obsahuje následující aliasy pro Rename-Item:

  • Všechny platformy:
    • ren
    • rni

Rename-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.