Remove-Item
Törli a megadott elemeket.
Syntax
Path (Default) - FileSystem provider
Remove-Item
[-Path] <String[]>
[-Filter <String>]
[-Include <String[]>]
[-Exclude <String[]>]
[-Recurse]
[-Force]
[-Credential <PSCredential>]
[-WhatIf]
[-Confirm]
[-Stream <String[]>]
[<CommonParameters>]
LiteralPath - FileSystem provider
Remove-Item
-LiteralPath <String[]>
[-Filter <String>]
[-Include <String[]>]
[-Exclude <String[]>]
[-Recurse]
[-Force]
[-Credential <PSCredential>]
[-WhatIf]
[-Confirm]
[-Stream <String[]>]
[<CommonParameters>]
Path (Default) - Certificate provider
Remove-Item
[-Path] <String[]>
[-Filter <String>]
[-Include <String[]>]
[-Exclude <String[]>]
[-Recurse]
[-Force]
[-Credential <PSCredential>]
[-WhatIf]
[-Confirm]
[-DeleteKey]
[<CommonParameters>]
LiteralPath - Certificate provider
Remove-Item
-LiteralPath <String[]>
[-Filter <String>]
[-Include <String[]>]
[-Exclude <String[]>]
[-Recurse]
[-Force]
[-Credential <PSCredential>]
[-WhatIf]
[-Confirm]
[-DeleteKey]
[<CommonParameters>]
Path (Default) - All providers
Remove-Item
[-Path] <string[]>
[-Filter <string>]
[-Include <string[]>]
[-Exclude <string[]>]
[-Recurse]
[-Force]
[-Credential <pscredential>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
LiteralPath - All providers
Remove-Item
-LiteralPath <string[]>
[-Filter <string>]
[-Include <string[]>]
[-Exclude <string[]>]
[-Recurse]
[-Force]
[-Credential <pscredential>]
[-WhatIf]
[-Confirm]
[<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ő elemtípust 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ájlkiterjesztéssel rendelkező fájlok törlése
Ez a példa az összes olyan fájlt törli a . mappából, amely tartalmaz egy pont (C:\Test) nevű fájlt.
Mivel a parancs pontokat ad meg, a parancs nem törli a fájlkiterjesztéssel nem rendelkező mappákat vagy fájlokat.
Remove-Item C:\Test\*.*
2. példa: Dokumentumfájlok törlése egy mappában
Ez a példa törli az aktuális mappából az összes olyan fájlt, amely .doc fájlkiterjesztéssel és olyan névvel rendelkezik, amely nem tartalmazza *1*.
Remove-Item * -Include *.doc -Exclude *1*
A helyettesítő karakter (*) használatával adja meg az aktuális mappa tartalmát. A törölni kívánt fájlok meghatározásához a Befoglalás és Kizárás paramétereket használja.
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.
Remove-Item -Path C:\Test\hidden-RO-file.txt -Force
A fájl megadásához a Path paramétert használja. A Force paramétert használja a törléshez. Erőnélkül nem törölhet írásvédett vagy rejtett fájlokat.
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.
Get-ChildItem * -Include *.csv -Recurse | Remove-Item
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 megpróbálja megadni a fájltípust az elérési útban, mint például -Path *.csv, a parancsmag úgy értelmezi, hogy a keresett fájl nem rendelkezik gyermekelemekkel, és a Recurse nem működik.
Megjegyzés:
Ezt a viselkedést a Windows 1909-ben és újabb verzióiban javítottuk.
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 lehet a parancsmag Remove-Item dinamikus paraméterét használni egy másik adatfolyam törléséhez. A streamparaméter a Windows PowerShell 3.0-ban van bevezetve.
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'.
A Stream paraméter Get-Item megszerzi a Zone.Identifier fájl Copy-Script.ps1 adatfolyamát.
Remove-Item a Stream paramétert használja a fájl Zone.Identifier streamjének eltávolításához. Végül a Get-Item parancsmag azt mutatja, hogy a Zone.Identifier stream törölve lett.
Paraméterek
-Confirm
Megerősítést kér a parancsmag futtatása előtt. További információkért lásd a következő cikkeket:
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 |
-DeleteKey
Ez egy dinamikus paraméter, amelyet a tanúsítványszolgáltató elérhetővé tett. A tanúsítványszolgáltató és ez a paraméter csak Windows-platformokon érhető el.
Ha meg van adva, a parancsmag törli a titkos kulcsot a tanúsítvány törlésekor.
További információért lásd a about_Certificate_Providerrészt.
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 |
-Exclude
Sztringtömbként olyan elemet vagy elemeket határoz meg, amelyeket ez a parancsmag kizár a műveletből. 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. A Kizárás paraméter csak akkor érvényes, ha a parancs egy elem tartalmát tartalmazza, például C:\Windows\*, ahol a helyettesítő karakter a C:\Windows könyvtár tartalmát adja meg.
Ha a Recurse parancsot a Kizárásparancs mellett használja, a Kizárás csak az aktuális könyvtár eredményeit szűri. Ha vannak olyan fájlok, amelyek megfelelnek az almappákban a Kizárás mintájának, azokat a fájlokat a szülőkönyvtárukkal együtt eltávolítják.
Paramétertulajdonságok
| Típus: | String[] |
| Alapértelmezett érték: | None |
| Támogatja a helyettesítő karaktereket: | True |
| 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
Szűrőt ad meg a útvonal paraméter minősítéséhez. A Fájlrendszer szolgáltató az egyetlen telepített PowerShell-szolgáltató, amely támogatja a szűrők használatát. A FileSystem szűrőnyelvének szintaxisát az about_Wildcards-ban találhatja meg. 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: | True |
| 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 az egyébként nem módosítható elemeket, például rejtett vagy írásvédett fájlokat, írásvédett aliasokat vagy változókat. 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
Sztringtömbként egy elemet vagy elemet határoz meg, amelyet ez a parancsmag tartalmaz a műveletben. 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. Az Include paraméter csak akkor érvényes, ha a parancs egy elem tartalmát tartalmazza, például C:\Windows\*, ahol a helyettesítő karakter a C:\Windows könyvtár tartalmát adja meg.
Paramétertulajdonságok
| Típus: | String[] |
| Alapértelmezett érték: | None |
| Támogatja a helyettesítő karaktereket: | True |
| 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
Egy vagy több hely elérési útját adja meg. A LiteralPath értékét pontosan a beírt módon használja a rendszer. 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.
További információk az about_Quoting_Rules oldalon találhatók: .
Paramétertulajdonságok
| Típus: | String[] |
| Alapértelmezett érték: | None |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
| Aliasok: | PSPath, LP |
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.
Előfordulhat, hogy a Recurse paraméter nem törli az összes almappát vagy az összes gyermekelemet. Ez egy ismert probléma.
Megjegyzés:
Ezt a viselkedést kijavítottuk a Windows 1909-ben és újabb verzióiban.
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
Ez a FileSystem szolgáltató által elérhetővé tett dinamikus paraméter. Ez a paraméter csak Windows rendszeren érhető el. Ez a paraméter nem használható a Recurse paraméterrel együtt.
A Remove-Item használatával törölhet egy másik adatfolyamot, például Zone.Identifier.
Az internetről letöltött fájlokat blokkoló biztonsági ellenőrzések megszüntetése azonban nem ajánlott. 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. A Windows PowerShell 7.2-től kezdve Remove-Item eltávolíthat alternatív adatfolyamokat a könyvtárakból és fájlokból.
Lásd about_FileSystem_Providera további információkért.
Paramétertulajdonságok
| Típus: | String[] |
| Alapértelmezett érték: | None |
| Támogatja a helyettesítő karaktereket: | True |
| 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 |
-WhatIf
Megjeleníti, mi történne, ha a parancsmag futna. A parancsprogram nem lett futtatva.
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 PowerShell a következő aliasokat tartalmazza Remove-Item:
- Minden platform:
deleraserdri
- Windows:
rmrmdir
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.
Ha olyan mappát próbál törölni, amely elemeket tartalmaz a Recurse paraméter használata nélkül, a parancsmag megerősítést kér. A -Confirm:$false használata nem szünteti meg az utasítást. Ez szándékosan van így.