Condividi tramite


Write-Debug

Scrive un messaggio di debug nella console.

Sintassi

Write-Debug
     [-Message] <String>
     [<CommonParameters>]

Descrizione

Il Write-Debug cmdlet scrive messaggi di debug nella console da uno script o un comando.

Per impostazione predefinita, i messaggi di debug non vengono visualizzati nella console, ma è possibile visualizzarli usando il parametro Debug o la $DebugPreference variabile.

Esempio

Esempio 1: Comprendere $DebugPreference

In questo esempio viene scritto un messaggio di debug.

Write-Debug "Cannot open file."

Il valore predefinito di $DebugPreference è SilentlyContinue. Pertanto, il messaggio non viene visualizzato nella console.

Esempio 2: Modificare il valore di $DebugPreference

In questo esempio viene illustrato l'effetto della modifica del valore della $DebugPreference variabile. In primo luogo, viene visualizzato il valore corrente di $DebugPreference e si tenta di scrivere un messaggio di debug. Viene quindi modificato il valore di $DebugPreference in Continua, che consente di visualizzare i messaggi di debug.

PS> $DebugPreference
SilentlyContinue
PS> Write-Debug "Cannot open file."
PS>
PS> $DebugPreference = "Continue"
PS> Write-Debug "Cannot open file."
DEBUG: Cannot open file.

Per altre informazioni su $DebugPreference, vedere about_Preference_Variables.

Esempio 3: Usare il parametro Debug per eseguire l'override di $DebugPreference

La Test-Debug funzione scrive il valore della $DebugPreference variabile nell'host di PowerShell e nel flusso Debug. In questo esempio viene usato il parametro Debug per eseguire l'override del $DebugPreference valore.

function Test-Debug {
    [CmdletBinding()]
    param()
    Write-Debug ('$DebugPreference is ' + $DebugPreference)
    Write-Host ('$DebugPreference is ' + $DebugPreference)
}

PS> Test-Debug
$DebugPreference is SilentlyContinue
PS> Test-Debug -Debug
DEBUG: $DebugPreference is Inquire

Confirm
Continue with this operation?
[Y] Yes  [A] Yes to All  [H] Halt Command  [?] Help (default is "Y"):
$DebugPreference is Inquire
PS> $DebugPreference
SilentlyContinue

Si noti che il valore delle $DebugPreference modifiche quando si usa il parametro Debug . Questa modifica influisce solo sull'ambito della funzione. Il valore non è interessato all'esterno della funzione.

Nota

Quando il valore di $DebugPreferenceè Inquire, PowerShell arresta l'esecuzione per chiedere se l'esecuzione deve continuare.

Per altre informazioni sul parametro comune Debug , vedere about_CommonParameters.

Parametri

-Message

Specifica il messaggio di debug da inviare alla console.

Type:String
Aliases:Msg
Position:0
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

Input

String

È possibile inviare una pipe a una stringa contenente un messaggio di debug in Write-Debug.

Output

None

Write-Debug scrive solo nel flusso di debug. Non restituisce alcun output.