Freigeben über


Out-String

Sendet Objekte als Eine Reihe von Zeichenfolgen an den Host.

Syntax

Default (Standard)

Out-String
    [-Stream]
    [-Width <Int32>]
    [-InputObject <PSObject>]
    [<CommonParameters>]

Beschreibung

Das cmdlet Out-String konvertiert die Objekte, die Von Windows PowerShell verwaltet werden, in ein Array von Zeichenfolgen. Standardmäßig sammelt Out-String die Zeichenfolgen und gibt sie als einzelne Zeichenfolge zurück. Sie können jedoch den parameter Stream verwenden, um Out-String zu leiten, um jeweils eine Zeichenfolge zurückzugeben. Mit diesem Cmdlet können Sie die Zeichenfolgenausgabe wie in herkömmlichen Shells durchsuchen und bearbeiten, wenn die Objektmanipulation weniger bequem ist.

Beispiele

Beispiel 1: Ausgeben von Text in der Konsole als Zeichenfolge

PS C:\> Get-Content C:\test1\testfile2.txt | Out-String

Dieser Befehl sendet den Inhalt der Testfile2.txt Datei als einzelne Zeichenfolge an die Konsole. Es verwendet das Cmdlet Get-Content, um den Inhalt der Datei abzurufen. Der Pipelineoperator (|) sendet den Inhalt an Out-String, der den Inhalt als Zeichenfolge an die Konsole sendet.

Beispiel 2: Abrufen der aktuellen Kultur und Konvertieren der Daten in Zeichenfolgen

Der erste Befehl verwendet das Cmdlet Get-Culture, um die regionalen Einstellungen abzurufen. Der Pipelineoperator (|) sendet das Ergebnis an das cmdlet Select-Object, das alle Eigenschaften (*) des Kulturobjekts auswählt, das zurückgegeben Get-Culture. Der Befehl speichert dann die Ergebnisse in der variablen $C.

Der zweite Befehl verwendet das Cmdlet Out-String, um das CultureInfo- objekt in eine Reihe von Zeichenfolgen (eine Zeichenfolge für jede Eigenschaft) zu konvertieren. Es verwendet den parameter InputObject, um die variable $C an Out-Stringzu übergeben. Der parameter Width wird auf 100 Zeichen pro Zeile festgelegt, um das Abschneiden zu verhindern.

PS C:\> $C = Get-Culture | Select-Object *
PS C:\> Out-String -InputObject $C -Width 100

Mit diesen Befehlen werden die regionalen Einstellungen für den aktuellen Benutzer abgerufen und die Daten in Zeichenfolgen konvertiert.

Beispiel 3: Arbeiten mit Objekten

PS C:\> Get-Alias | Out-String -Stream | Select-String "Get-Command"

In diesem Beispiel wird der Unterschied zwischen dem Arbeiten mit Objekten und dem Arbeiten mit Zeichenfolgen veranschaulicht. Der Befehl zeigt Aliase an, die den Ausdruck "Get-Command" enthalten. Es verwendet das cmdlet Get-Alias, um eine Reihe von AliasInfo- -Objekten abzurufen (eine für jeden Alias in der aktuellen Sitzung).

Der Pipelineoperator (|) sendet die Ausgabe des cmdlets Get-Alias an das Cmdlet Out-String, das die Objekte in eine Reihe von Zeichenfolgen konvertiert. Es verwendet den Stream-Parameter von Out-String, um jede Zeichenfolge einzeln zu senden, anstatt sie in eine einzelne Zeichenfolge zu verketten. Ein anderer Pipelineoperator sendet die Zeichenfolgen an das Cmdlet Select-String, das die Zeichenfolgen auswählt, die "Get-Command" an einer beliebigen Stelle in der Zeichenfolge enthalten.

Wenn Sie den parameter Stream weglassen, zeigt der Befehl alle Aliase an, da Select-String "Get-Command" in der einzelnen Zeichenfolge findet, die Out-String zurückgibt, und der Formatierer zeigt die Zeichenfolge als Tabelle an.

Parameter

-InputObject

Gibt die Objekte an, die in eine Zeichenfolge geschrieben werden sollen. Geben Sie eine Variable ein, die die Objekte enthält, oder geben Sie einen Befehl oder Ausdruck ein, der die Objekte ermittelt.

Parametereigenschaften

Typ:PSObject
Standardwert:None
Unterstützt Platzhalter:False
Nicht anzeigen:False

Parametersätze

(All)
Position:Named
Obligatorisch:False
Wert aus Pipeline:True
Wert aus Pipeline nach dem Eigenschaftsnamen:False
Wert aus verbleibenden Argumenten:False

-Stream

Gibt an, dass das Cmdlet die Zeichenfolgen für jedes Objekt separat sendet. Standardmäßig werden die Zeichenfolgen für jedes Objekt gesammelt und als einzelne Zeichenfolge gesendet.

Wenn Sie den parameter Stream verwenden möchten, geben Sie -Stream oder ihren Alias ein, ost.

Parametereigenschaften

Typ:SwitchParameter
Standardwert:None
Unterstützt Platzhalter:False
Nicht anzeigen:False

Parametersätze

(All)
Position:Named
Obligatorisch:False
Wert aus Pipeline:False
Wert aus Pipeline nach dem Eigenschaftsnamen:False
Wert aus verbleibenden Argumenten:False

-Width

Gibt die Anzahl der Zeichen in jeder Ausgabezeile an. Alle zusätzlichen Zeichen werden abgeschnitten, nicht umschlossen. Der parameter Width gilt nur für Objekte, die formatiert werden. Wenn Sie diesen Parameter weglassen, wird die Breite durch die Merkmale des Hostprogramms bestimmt. Der Standardwert für die Windows PowerShell-Konsole beträgt 80 (Zeichen).

Parametereigenschaften

Typ:Int32
Standardwert:None
Unterstützt Platzhalter:False
Nicht anzeigen:False

Parametersätze

(All)
Position:Named
Obligatorisch:False
Wert aus Pipeline:False
Wert aus Pipeline nach dem Eigenschaftsnamen:False
Wert aus verbleibenden Argumenten:False

CommonParameters

Dieses Cmdlet unterstützt die allgemeinen Parameter -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction und -WarningVariable. Weitere Informationen findest du unter about_CommonParameters.

Eingaben

PSObject

Objekte können an Out-Stringweitergeleitet werden.

Ausgaben

String

Out-String gibt die Zeichenfolge zurück, die sie aus dem Eingabeobjekt erstellt.

Hinweise

  • Die Cmdlets, die das Verb Out enthalten, das keine Objekte formatiert; sie rendern sie einfach und senden sie an das angegebene Anzeigeziel. Wenn Sie ein unformatiertes Objekt an ein Out Cmdlet senden, sendet das Cmdlet es an ein Formatierungs-Cmdlet, bevor es gerendert wird.
  • Die Out--Cmdlets verfügen nicht über Parameter, die Namen oder Dateipfade enthalten. Verwenden Sie einen Pipelineoperator (|), um Daten an ein -Cmdlet "Out" zu senden, um die Ausgabe eines Windows PowerShell-Befehls an das Cmdlet zu senden. Sie können Daten auch in einer Variablen speichern und den parameter InputObject verwenden, um die Daten an das Cmdlet zu übergeben.