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 cmdlet Clear-Content 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 podobna do Clear-Item, 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 plików init.txt we wszystkich podkatalogach katalogu SmpUsers. 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 rozszerzeniem nazwy pliku .log, 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 rozszerzeniem nazwy pliku .log zamiast określania *.log w ścieżce sprawia, że operacja jest szybsza.

Przykład 3. Czyszczenie wszystkich danych ze strumienia

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

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

Drugie polecenie używa polecenia cmdlet Clear-Content 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 polecenia cmdlet Unblock-File.

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

Nuta

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 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ść LiteralPath 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 pojedynczy cudzysłów ('). 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ć polecenia cmdlet Clear-Content, 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 polecenia cmdlet Unblock-File.

Ten parametr został wprowadzony w programie PowerShell 3.0. Od programu PowerShell 7.2 Clear-Content mogą 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, jeśli polecenie cmdlet zostanie uruchomione. Polecenie cmdlet nie jest uruchamiane.

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 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 certyfikatów programu PowerShell lub rejestru, użyj Clear-Item.

Polecenie cmdlet Clear-Content 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.