Udostępnij za pośrednictwem


Clear-Content

Usuwa zawartość elementu, ale nie usuwa elementu.

Składnia

Clear-Content
     [-Path] <String[]>
     [-Filter <String>]
     [-Include <String[]>]
     [-Exclude <String[]>]
     [-Force]
     [-Credential <PSCredential>]
     [-WhatIf]
     [-Confirm]
     [-Stream <String>]
     [<CommonParameters>]
Clear-Content
     -LiteralPath <String[]>
     [-Filter <String>]
     [-Include <String[]>]
     [-Exclude <String[]>]
     [-Force]
     [-Credential <PSCredential>]
     [-WhatIf]
     [-Confirm]
     [-Stream <String>]
     [<CommonParameters>]
Clear-Content
     [-Path] <String[]>
     [-Filter <String>]
     [-Include <String[]>]
     [-Exclude <String[]>]
     [-Force]
     [-Credential <PSCredential>]
     [-WhatIf]
     [-Confirm]
     [<CommonParameters>]
Clear-Content
     -LiteralPath <String[]>
     [-Filter <String>]
     [-Include <String[]>]
     [-Exclude <String[]>]
     [-Force]
     [-Credential <PSCredential>]
     [-WhatIf]
     [-Confirm]
     [<CommonParameters>]

Opis

Polecenie Clear-Content cmdlet usuwa zawartość elementu, na przykład usunięcie tekstu z pliku, ale nie powoduje usunięcia elementu. W rezultacie element istnieje, ale jest pusty. Clear-Content jest podobny do Clear-Itemelementu , ale działa na elementach z zawartością, a nie na elementach z wartościami.

Przykłady

Przykład 1. Usuwanie całej zawartości z katalogu

Clear-Content "..\SmpUsers\*\init.txt"

To polecenie usuwa całą zawartość z init.txt plików we wszystkich podkatalogach SmpUsers katalogu. Pliki nie są usuwane, ale są puste.

Przykład 2. Usuwanie zawartości wszystkich plików z symbolem wieloznacznymi

Clear-Content -Path "*" -Filter "*.log" -Force

To polecenie usuwa zawartość wszystkich plików w bieżącym katalogu z .log rozszerzeniem nazwy pliku, w tym pliki z atrybutem tylko do odczytu. Gwiazdka (*) w ścieżce reprezentuje wszystkie elementy w bieżącym katalogu. Parametr Force sprawia, że polecenie jest skuteczne w plikach tylko do odczytu. Użycie filtru w celu ograniczenia polecenia do plików z .log rozszerzeniem nazwy pliku zamiast określania *.log w ścieżce sprawia, że operacja jest szybsza.

Przykład 3. Czyszczenie wszystkich danych ze strumienia

W tym przykładzie Clear-Content pokazano, jak polecenie cmdlet czyści zawartość ze strumienia alternatywnego danych, pozostawiając strumień bez zmian.

Pierwsze polecenie używa Get-Content polecenia cmdlet do pobrania zawartości Zone.Identifier strumienia w Copy-Script.ps1 pliku, który został pobrany z Internetu.

Drugie polecenie używa Clear-Content polecenia cmdlet do wyczyszczenia zawartości.

Trzecie polecenie powtarza pierwsze polecenie. Sprawdza, czy zawartość jest czyszczone, ale strumień pozostaje. Jeśli strumień został usunięty, polecenie spowoduje wygenerowanie błędu.

Możesz użyć metody podobnej do tej, aby wyczyścić zawartość alternatywnego strumienia danych. Jednak nie jest to zalecany sposób wyeliminowania kontroli zabezpieczeń, które blokują pliki pobierane z Internetu. Jeśli sprawdzisz, czy pobrany plik jest bezpieczny, użyj Unblock-File polecenia cmdlet .

Get-Content C:\Test\Copy-Script.ps1 -Stream Zone.Identifier

[ZoneTransfer]
ZoneId=3

Clear-Content C:\Test\Copy-Script.ps1 -Stream Zone.Identifier
Get-Content C:\Test\Copy-Script.ps1 -Stream Zone.Identifier

Parametry

-Confirm

Monituje o potwierdzenie przed uruchomieniem polecenia cmdlet.

Typ:SwitchParameter
Aliasy:cf
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-Credential

Uwaga

Ten parametr nie jest obsługiwany przez żadnych dostawców zainstalowanych w programie PowerShell. Aby personifikować innego użytkownika lub podnieść poziom poświadczeń podczas uruchamiania tego polecenia cmdlet, użyj polecenia Invoke-Command.

Typ:PSCredential
Position:Named
Domyślna wartość:Current user
Wymagane:False
Akceptowanie danych wejściowych potoku:True
Akceptowanie symboli wieloznacznych:False

-Exclude

Określa jako tablicę ciągów ciągi, które to polecenie cmdlet pomija ze ścieżki do zawartości. Wartość tego parametru kwalifikuje parametr Path . Wprowadź element ścieżki lub wzorzec, taki jak *.txt. Dozwolone są symbole wieloznaczne.

Typ:String[]
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:True

-Filter

Określa filtr w formacie lub języku dostawcy. Wartość tego parametru kwalifikuje parametr Path . Składnia filtru, w tym użycie symboli wieloznacznych, zależy od dostawcy. Filtry są bardziej wydajne niż inne parametry, ponieważ dostawca stosuje je podczas pobierania obiektów, zamiast filtrować obiekty programu PowerShell po ich pobraniu.

Typ:String
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:True

-Force

Wymusza uruchomienie polecenia bez monitowania o potwierdzenie użytkownika.

Typ:SwitchParameter
Position:Named
Domyślna wartość:False
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-Include

Określa jako tablicę ciągów zawartość, którą to polecenie cmdlet czyści. Wartość tego parametru kwalifikuje parametr Path . Wprowadź element ścieżki lub wzorzec, taki jak *.txt. Dozwolone są symbole wieloznaczne.

Typ:String[]
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:True

-LiteralPath

Określa ścieżki do elementów, z których jest usuwana zawartość. W przeciwieństwie do parametru Path wartość LiterałuPath jest używana dokładnie tak, jak jest typowana. Znaki nie są interpretowane jako symbole wieloznaczne. Jeśli ścieżka zawiera znaki ucieczki, należy ująć ją w znaki pojedynczego cudzysłowu ('). Znaki pojedynczego cudzysłowu informują, że program PowerShell nie interpretuje żadnych znaków jako sekwencji ucieczki.

Typ:String[]
Aliasy:PSPath, LP
Position:Named
Domyślna wartość:None
Wymagane:True
Akceptowanie danych wejściowych potoku:True
Akceptowanie symboli wieloznacznych:False

-Path

Określa ścieżki do elementów, z których jest usuwana zawartość. Dozwolone są symbole wieloznaczne. Ścieżki muszą być ścieżkami do elementów, a nie do kontenerów. Na przykład należy określić ścieżkę do jednego lub kilku plików, a nie ścieżkę do katalogu. Dozwolone są symbole wieloznaczne. Ten parametr jest wymagany, ale nazwa parametru (ścieżka) jest opcjonalna.

Typ:String[]
Position:0
Domyślna wartość:None
Wymagane:True
Akceptowanie danych wejściowych potoku:True
Akceptowanie symboli wieloznacznych:True

-Stream

Jest to parametr dynamiczny udostępniany przez dostawcę systemu plików. Ten parametr jest dostępny tylko w systemie Windows.

Określa alternatywny strumień danych dla zawartości. Jeśli strumień nie istnieje, to polecenie cmdlet go utworzy. Symbole wieloznaczne nie są obsługiwane.

Możesz użyć Clear-Content polecenia cmdlet , aby zmienić zawartość dowolnego alternatywnego strumienia danych, takiego jak Zone.Identifier. Nie zalecamy jednak tego jako sposobu na wyeliminowanie kontroli zabezpieczeń, które blokują pliki pobierane z Internetu. Jeśli sprawdzisz, czy pobrany plik jest bezpieczny, użyj Unblock-File polecenia cmdlet .

Ten parametr został wprowadzony w programie PowerShell 3.0. Od programu PowerShell 7.2 Clear-Content można wyczyścić zawartość alternatywnych strumieni danych z katalogów, a także plików.

Aby uzyskać więcej informacji, zobacz about_FileSystem_Provider.

Typ:String
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-WhatIf

Pokazuje, co się stanie po uruchomieniu polecenia cmdlet. Polecenie cmdlet nie zostało uruchomione.

Typ:SwitchParameter
Aliasy:wi
Position:Named
Domyślna wartość:False
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

Dane wejściowe

None

Nie można potokować obiektów do tego polecenia cmdlet.

Dane wyjściowe

None

To polecenie cmdlet nie zwraca żadnych danych wyjściowych.

Uwagi

Program PowerShell zawiera następujące aliasy dla programu Clear-Content:

  • Wszystkie platformy:
    • clc

Można użyć Clear-Content z dostawcą systemu plików programu PowerShell i innymi dostawcami, którzy manipulują zawartością. Aby wyczyścić elementy, które nie są uważane za zawartość, takie jak elementy zarządzane przez dostawców certyfikatu programu PowerShell lub rejestru, użyj polecenia Clear-Item.

Polecenie Clear-Content cmdlet jest przeznaczone do pracy z danymi udostępnianymi przez dowolnego dostawcę. Aby wyświetlić listę dostawców dostępnych w sesji, wpisz Get-PsProvider. Aby uzyskać więcej informacji, zobacz about_Providers.