Remove-Item
Törli a megadott elemeket.
Syntax
Path (Alapértelmezett)
Remove-Item
[-Path] <String[]>
[-Filter <String>]
[-Include <String[]>]
[-Exclude <String[]>]
[-Recurse]
[-Force]
[-Credential <PSCredential>]
[-WhatIf]
[-Confirm]
[-UseTransaction]
[-Stream <String[]>]
[<CommonParameters>]
LiteralPath
Remove-Item
-LiteralPath <String[]>
[-Filter <String>]
[-Include <String[]>]
[-Exclude <String[]>]
[-Recurse]
[-Force]
[-Credential <PSCredential>]
[-WhatIf]
[-Confirm]
[-UseTransaction]
[-Stream <String[]>]
[<CommonParameters>]
Description
A Remove-Item parancsmag egy vagy több elemet töröl.
Mivel számos szolgáltató támogatja, számos különböző típusú elemet törölhet, például fájlokat, mappákat, beállításkulcsokat, változókat, aliasokat és függvényeket.
Példák
1. példa: Fájlnévkiterjesztéssel rendelkező fájlok törlése
Ez a parancs törli a "C:\Test" mappából az összes olyan fájlt, amely tartalmaz egy pont ('.') nevet. Mivel a parancs pontokat ad meg, a parancs nem törli azokat a mappákat vagy fájlokat, amelyek nem rendelkeznek fájlnévkiterjesztéssel.
Remove-Item C:\Test\*.*
2. példa: Néhány dokumentumfájl törlése egy mappában
Ez a parancs törli az aktuális mappából az összes olyan fájlt, amely rendelkezik ".doc" fájlnévkiterjesztéssel és egy olyan névvel, amely nem tartalmaz 1-et. A helyettesítő karaktert (*) használja az aktuális mappa tartalmának megadásához. A törölni kívánt fájlok meghatározásához a Befoglalás és Kizárás paramétereket használja.
Remove-Item * -Include *.doc -Exclude *1*
3. példa: Rejtett, írásvédett fájlok törlése
Ez a parancs olyan fájlt töröl, amely rejtett és írásvédett. A fájl megadásához a Path paramétert használja. A Force paramétert használja a törléshez. A Kényszerítésnélkül nem törölhet írásvédett vagy rejtett fájlokat.
Remove-Item -Path C:\Test\hidden-RO-file.txt -Force
4. példa: Fájlok törlése az almappákban rekurzív módon
Ez a parancs az aktuális mappában lévő összes CSV-fájlt és az összes almappát rekurzív módon törli.
Mivel a Recurse paramétere Remove-Item ismert problémával rendelkezik, a példában szereplő parancs a Get-ChildItem-t használja a kívánt fájlok lekéréséhez, majd a csővezeték operátor segítségével adja át őket Remove-Item-nek.
A Get-ChildItem parancsban Elérési út értéke "*", amely az aktuális mappa tartalmát jelöli.
A CSV-fájltípus megadásához az Include, a beolvasást rekurzívvá tenni pedig az Recurse használatával lehet.
Ha megkísérli megadni a fájltípust, például -Path *.csv, a parancsmag a keresés tárgyát gyermekelemekkel nem rendelkező fájlként értelmezi, és a Recurse sikertelen lesz.
Get-ChildItem * -Include *.csv -Recurse | Remove-Item
5. példa: Alkulcsok rekurzív törlése
Ez a parancs törli az "OldApp" beállításkulcsot és annak összes alkulcsát és értékét.
A kulcs eltávolításához a Remove-Item-t használja.
Az elérési út meg van adva, de a választható paraméter neve (Elérési út) nem lesz megadva.
A Recurse paraméter rekurzív módon törli az "OldApp" kulcs összes tartalmát. Ha a kulcs alkulcsokat tartalmaz, és kihagyja a Recurse paramétert, a rendszer kérni fogja, hogy törölje a kulcs tartalmát.
Remove-Item HKLM:\Software\MyCompany\OldApp -Recurse
6. példa: Speciális karaktereket tartalmazó fájlok törlése
Az alábbi példa bemutatja, hogyan törölhet különleges karaktereket, például szögletes zárójeleket vagy kerek zárójeleket tartalmazó fájlokat.
Get-ChildItem
Directory: C:\temp\Downloads
Mode LastWriteTime Length Name
---- ------------- ------ ----
-a---- 6/1/2018 12:19 PM 1362 myFile.txt
-a---- 6/1/2018 12:30 PM 1132 myFile[1].txt
-a---- 6/1/2018 12:19 PM 1283 myFile[2].txt
-a---- 6/1/2018 12:19 PM 1432 myFile[3].txt
Get-ChildItem | Where-Object Name -Like '*`[*'
Directory: C:\temp\Downloads
Mode LastWriteTime Length Name
---- ------------- ------ ----
-a---- 6/1/2018 12:30 PM 1132 myFile[1].txt
-a---- 6/1/2018 12:19 PM 1283 myFile[2].txt
-a---- 6/1/2018 12:19 PM 1432 myFile[3].txt
Get-ChildItem | Where-Object Name -Like '*`[*' | ForEach-Object { Remove-Item -LiteralPath $_.Name }
Get-ChildItem
Directory: C:\temp\Downloads
Mode LastWriteTime Length Name
---- ------------- ------ ----
-a---- 6/1/2018 12:19 PM 1362 myFile.txt
7. példa: Alternatív adatfolyam eltávolítása
Ez a példa bemutatja, hogyan használhatja a Remove-Item parancsmag Stream dinamikus paraméterét egy másik adatfolyam törléséhez. A streamparaméter a Windows PowerShell 3.0-ban van bevezetve.
Az első parancs a parancsmag Get-Item dinamikus paraméterét használja a Zone.Identifier "Copy-Script.ps1" fájl streamjének lekéréséhez.
A második parancs a parancsmag Remove-Item dinamikus paraméterét használja a fájl Zone.Identifier streamjének eltávolításához.
A harmadik parancs a parancsmag Get-Item dinamikus paraméterével ellenőrzi, hogy a Zone.Identifier stream törölve van-e.
A negyedik parancs a Get-Item paraméter nélkül parancsmagot annak ellenőrzéséhez, hogy a fájl nincs-e törölve.
Get-Item C:\Test\Copy-Script.ps1 -Stream Zone.Identifier
FileName: \\C:\Test\Copy-Script.ps1
Stream Length
------ ------
Zone.Identifier 26
Remove-Item C:\Test\Copy-Script.ps1 -Stream Zone.Identifier
Get-Item C:\Test\Copy-Script.ps1 -Stream Zone.Identifier
Get-Item : Could not open alternate data stream 'Zone.Identifier' of file 'C:\Test\Copy-Script.ps1'.
At line:1 char:1
+ Get-Item 'C:\Test\Copy-Script.ps1' -Stream Zone.Identifier
+ [!INCLUDE[]()][!INCLUDE[]()][!INCLUDE[]()][!INCLUDE[]()][!INCLUDE[]()]~~
+ CategoryInfo : ObjectNotFound: (C:\Test\Copy-Script.ps1:String) [Get-Item], FileNotFoundE
xception
+ FullyQualifiedErrorId : AlternateDataStreamNotFound,Microsoft.PowerShell.Commands.GetItemCommand
Get-Item C:\Test\Copy-Script.ps1
Directory: C:\Test
Mode LastWriteTime Length Name
---- ------------- ------ ----
-a--- 8/4/2011 11:15 AM 9436 Copy-Script.ps1
Paraméterek
-Confirm
Megerősítést kér a parancsmag futtatása előtt.
Paramétertulajdonságok
| Típus: | SwitchParameter |
| Alapértelmezett érték: | False |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
| Aliasok: | Cf |
Paraméterkészletek
(All)
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
-Credential
Megjegyzés:
Ezt a paramétert a PowerShell-lel telepített szolgáltatók nem támogatják. Ha egy másik felhasználó szerepében szeretne fellépni, vagy emelni szeretné hitelesítő adatait a parancsmag futtatásakor, használja a Invoke-Command.
Paramétertulajdonságok
| Típus: | PSCredential |
| Alapértelmezett érték: | Current user |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
Paraméterkészletek
(All)
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | True |
| Fennmaradó argumentumokból származó érték: | False |
-Exclude
Megadja azokat az elemeket, amelyeket ez a parancsmag kihagy. Ennek a paraméternek az értéke a Elérési út paramétert minősíti. Adjon meg egy elérési út elemet vagy mintát, például *.txt. A helyettesítő karakterek használata engedélyezett.
Paramétertulajdonságok
| Típus: | String[] |
| Alapértelmezett érték: | None |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
Paraméterkészletek
(All)
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
-Filter
A szűrőt a szolgáltató formátumában vagy nyelvén adja meg. Ennek a paraméternek az értéke a Elérési út paramétert minősíti.
A szűrő szintaxisa, beleértve a helyettesítő karakterek használatát is, a szolgáltatótól függ. A szűrők hatékonyabbak, mint a többi paraméter, mivel a szolgáltató akkor alkalmazza őket, amikor a parancsmag lekéri az objektumokat, és nem azt, hogy a PowerShell szűrje az objektumokat a lekérés után.
Paramétertulajdonságok
| Típus: | String |
| Alapértelmezett érték: | None |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
Paraméterkészletek
(All)
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
-Force
Kényszeríti a parancsmagot, hogy eltávolítsa azokat az elemeket, amelyek egyébként nem módosíthatók, például rejtett vagy írásvédett fájlok, írásvédett aliasok vagy változók. A parancsmag nem tudja eltávolítani az állandó aliasokat vagy változókat. A megvalósítás szolgáltatónként eltérő. További információért lásd a about_Providerscímű részt. A parancsmag még a Force paraméter használatával sem tudja felülbírálni a biztonsági korlátozásokat.
Paramétertulajdonságok
| Típus: | SwitchParameter |
| Alapértelmezett érték: | False |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
Paraméterkészletek
(All)
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
-Include
A törölni kívánt elemeket adja meg. Ennek a paraméternek az értéke a Elérési út paramétert minősíti. Adjon meg egy elérési út elemet vagy mintát, például "*.txt". A helyettesítő karakterek használata engedélyezett.
Paramétertulajdonságok
| Típus: | String[] |
| Alapértelmezett érték: | None |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
Paraméterkészletek
(All)
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
-LiteralPath
Megadja az eltávolított elemek elérési útját. A Path paramétertől eltérően a LiteralPath értéke pontosan a beíráskor lesz használva. A rendszer egyetlen karaktert sem értelmez helyettesítő karakterként. Ha az elérési útvonal escape karaktereket tartalmaz, tedd azt egyes idézőjelek közé. Az egyes idézőjelek azt mondják a PowerShellnek, hogy egyetlen karaktert se értelmezzen escape szekvenciaként.
Paramétertulajdonságok
| Típus: | String[] |
| Alapértelmezett érték: | None |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
| Aliasok: | PSPath |
Paraméterkészletek
LiteralPath
| Position: | Named |
| Kötelező: | True |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | True |
| Fennmaradó argumentumokból származó érték: | False |
-Path
Megadja az eltávolított elemek elérési útját. A helyettesítő karakterek használata engedélyezett.
Paramétertulajdonságok
| Típus: | String[] |
| Alapértelmezett érték: | None |
| Támogatja a helyettesítő karaktereket: | True |
| DontShow: | False |
Paraméterkészletek
Path
| Position: | 0 |
| Kötelező: | True |
| Folyamatból származó érték: | True |
| Folyamatból származó érték tulajdonságnév alapján: | True |
| Fennmaradó argumentumokból származó érték: | False |
-Recurse
Azt jelzi, hogy ez a parancsmag eltávolítja az elemeket a megadott helyeken, valamint a helyek összes alárendelt elemében.
Ha a Belefoglalás paraméterrel használja, előfordulhat, hogy a Recurse paraméter nem törli az összes almappát vagy az összes gyermekelemet.
Ez egy ismert probléma.
Áthidaló megoldásként próbálja meg a Get-ChildItem -Recurse parancs eredményeit Remove-Item, a jelen témakör 4. példájában leírtak szerint.
Paramétertulajdonságok
| Típus: | SwitchParameter |
| Alapértelmezett érték: | None |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
Paraméterkészletek
(All)
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
-Stream
A Stream paraméter egy dinamikus paraméter, amelyet a Fájlrendszer-szolgáltató hozzáad Remove-Item.
Ez a paraméter csak fájlrendszer-meghajtókon működik.
A Remove-Item egy másik adatfolyam törlésére is használható.
Az internetről letöltött fájlokat letiltó biztonsági ellenőrzések azonban nem ajánlottak.
Ha ellenőrzi, hogy egy letöltött fájl biztonságos-e, használja a Unblock-File parancsmagot.
Ezt a paramétert a Windows PowerShell 3.0-ban vezettük be.
Paramétertulajdonságok
| Típus: | String[] |
| Alapértelmezett érték: | None |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
Paraméterkészletek
(All)
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
-UseTransaction
Tartalmazza a parancsot az aktív tranzakcióban. Ez a paraméter csak akkor érvényes, ha egy tranzakció folyamatban van. További információ: about_Transactions
Paramétertulajdonságok
| Típus: | SwitchParameter |
| Alapértelmezett érték: | False |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
| Aliasok: | usetx |
Paraméterkészletek
(All)
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
-WhatIf
Megjeleníti, mi történne, ha a parancsmag futna. A parancsmag nem fut.
Paramétertulajdonságok
| Típus: | SwitchParameter |
| Alapértelmezett érték: | False |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
| Aliasok: | Wi |
Paraméterkészletek
(All)
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
CommonParameters
Ez a parancsmag a következő gyakori paramétereket támogatja: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction és -WarningVariable. További információért lásd about_CommonParameters.
Bevitelek
String
Ehhez a parancsmaghoz egy elérési utat tartalmazó, de nem literális elérési utat tartalmazó sztringet csövezhet.
Kimenetek
None
Ez a parancsmag nem ad vissza kimenetet.
Jegyzetek
A Remove-Item parancsmag úgy lett kialakítva, hogy bármely szolgáltató által közzétett adatokkal működjön együtt. A munkamenetben elérhető szolgáltatók listájához írja be a Get-PsProvider. További információért lásd a about_Providerscímű részt.