Compartir a través de


Start-Transcript

Crea un registro de toda o parte de una sesión de PowerShell en un archivo de texto.

Sintaxis

ByPath (Es el valor predeterminado).

Start-Transcript
    [[-Path] <String>]
    [-Append]
    [-Force]
    [-NoClobber]
    [-IncludeInvocationHeader]
    [-UseMinimalHeader]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

ByLiteralPath

Start-Transcript
    [[-LiteralPath] <String>]
    [-Append]
    [-Force]
    [-NoClobber]
    [-IncludeInvocationHeader]
    [-UseMinimalHeader]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

ByOutputDirectory

Start-Transcript
    [[-OutputDirectory] <String>]
    [-Append]
    [-Force]
    [-NoClobber]
    [-IncludeInvocationHeader]
    [-UseMinimalHeader]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

Description

El cmdlet Start-Transcript crea un registro de toda o parte de una sesión de PowerShell en un archivo de texto. La transcripción incluye todos los comandos que el usuario escribe y toda la salida que aparece en la consola.

De forma predeterminada, Start-Transcript almacena la transcripción en la siguiente ubicación con el nombre predeterminado:

  • En Windows: $HOME\Documents
  • En Linux o macOS: $HOME

El nombre de archivo predeterminado es PowerShell_transcript.<computername>.<random>.<timestamp>.txt.

A partir de Windows PowerShell 5.0, Start-Transcript incluye el nombre de host en el nombre de archivo generado de todas las transcripciones. El nombre de archivo también incluye caracteres aleatorios en nombres para evitar posibles sobrescrituras o duplicaciones al iniciar dos o más transcripciones simultáneamente. Incluir el nombre del equipo es útil si almacena las transcripciones en una ubicación centralizada. La cadena de caracteres aleatorios impide adivinar el nombre de archivo para obtener acceso no autorizado al archivo.

Si el archivo de destino no tiene una marca de orden de bytes (BOM), Start-Transcript el valor predeterminado es Utf8NoBom codificación en el archivo de destino.

Ejemplos

Ejemplo 1: Iniciar un archivo de transcripción con la configuración predeterminada

Start-Transcript

Este comando inicia una transcripción en la ubicación de archivo predeterminada.

Ejemplo 2: Iniciar un archivo de transcripción en una ubicación específica

Start-Transcript -Path "C:\transcripts\transcript0.txt" -NoClobber

Este comando inicia una transcripción en el archivo Transcript0.txt en C:\transcripts. parámetro noClobber impide que se sobrescriban los archivos existentes. Si el archivo Transcript0.txt ya existe, se produce un error en el comando.

Ejemplo 3: Iniciar un archivo de transcripción con un nombre único y almacenarlo en un recurso compartido de archivos

En el ejemplo siguiente se crea un archivo de transcripción con un nombre lo suficientemente único como para almacenarse en una ubicación compartida. El nombre de archivo se construye a partir del nombre del usuario, el nombre de host del equipo que ejecuta PowerShell, la versión de PowerShell y la fecha y hora. La transcripción se almacena en el recurso compartido de archivos \\Server01\Transcripts.

$sharePath  = '\\Server01\Transcripts'
$username   = $Env:USERNAME
$hostname   = hostname
$version    = $PSVersionTable.PSVersion.ToString()
$datetime   = Get-Date -F 'yyyyMMddHHmmss'
$filename   = "Transcript-${username}-${hostname}-${version}-${datetime}.txt"
$Transcript = (Join-Path -Path $sharePath -ChildPath $filename).ToString()
Start-Transcript

La ruta de acceso completa al archivo de transcripción se almacena en la variable de preferencia $Transcript. Para obtener más información sobre la variable de preferencia de $Transcript, consulte about_Preference_Variables.

Ejemplo 4: Iniciar una transcripción mediante una ruta de acceso relativa en sistemas Windows

Cuando se usa una ruta de acceso relativa con el parámetro OutputDirectory en Windows, la ruta de acceso es relativa al Documents directorio.

Start-Transcript -Path .\transcripts
Transcript started, output file is C:\Users\username\Documents\.\transcripts\PowerShell_transcript.HOSTNAME.8S6RpEfN.20251105152247.txt

Ejemplo 5: Iniciar una transcripción mediante una ruta de acceso relativa en sistemas que no son windows

Cuando se usa una ruta de acceso relativa con el parámetro OutputDirectory en sistemas que no son windows, la ruta de acceso es relativa al directorio principal.

Start-Transcript -Path ./transcripts
Transcript started, output file is /home/username/./transcripts/PowerShell_transcript.hostname.ift21QeV.20251105151236.txt

Parámetros

-Append

Indica que este cmdlet agrega la nueva transcripción al final de un archivo existente. Use el parámetro path de para especificar el archivo.

Propiedades del parámetro

Tipo:SwitchParameter
Valor predeterminado:None
Admite caracteres comodín:False
DontShow:False

Conjuntos de parámetros

(All)
Posición:Named
Mandatory:False
Valor de la canalización:False
Valor de la canalización por nombre de propiedad:False
Valor de los argumentos restantes:False

-Confirm

Le pide confirmación antes de ejecutar el cmdlet.

Propiedades del parámetro

Tipo:SwitchParameter
Valor predeterminado:False
Admite caracteres comodín:False
DontShow:False
Alias:cf

Conjuntos de parámetros

(All)
Posición:Named
Mandatory:False
Valor de la canalización:False
Valor de la canalización por nombre de propiedad:False
Valor de los argumentos restantes:False

-Force

Permite que el cmdlet anexe la transcripción a un archivo de solo lectura existente. Cuando se usa en un archivo de solo lectura, el cmdlet cambia el permiso de archivo a lectura y escritura. El cmdlet no puede invalidar las restricciones de seguridad cuando se usa este parámetro.

Propiedades del parámetro

Tipo:SwitchParameter
Valor predeterminado:None
Admite caracteres comodín:False
DontShow:False

Conjuntos de parámetros

(All)
Posición:Named
Mandatory:False
Valor de la canalización:False
Valor de la canalización por nombre de propiedad:False
Valor de los argumentos restantes:False

-IncludeInvocationHeader

Indica que este cmdlet registra la marca de tiempo cuando se ejecutan los comandos.

Propiedades del parámetro

Tipo:SwitchParameter
Valor predeterminado:None
Admite caracteres comodín:False
DontShow:False

Conjuntos de parámetros

(All)
Posición:Named
Mandatory:False
Valor de la canalización:False
Valor de la canalización por nombre de propiedad:False
Valor de los argumentos restantes:False

-LiteralPath

Especifica una ubicación para el archivo de transcripción. A diferencia del parámetro Path, el valor del parámetro LiteralPath se usa exactamente como se escribe. Ninguno de los caracteres se interpreta como caracteres comodín. Si la ruta de acceso incluye caracteres de escape, escríbala entre comillas simples. Las comillas simples informan a PowerShell de no interpretar ningún carácter como secuencias de escape.

Propiedades del parámetro

Tipo:String
Valor predeterminado:None
Admite caracteres comodín:False
DontShow:False
Alias:PSPath, LP

Conjuntos de parámetros

ByLiteralPath
Posición:0
Mandatory:False
Valor de la canalización:False
Valor de la canalización por nombre de propiedad:False
Valor de los argumentos restantes:False

-NoClobber

Indica que este cmdlet no sobrescribe un archivo existente. De forma predeterminada, si existe un archivo de transcripción en la ruta de acceso especificada, Start-Transcript sobrescribe el archivo sin advertencia.

Propiedades del parámetro

Tipo:SwitchParameter
Valor predeterminado:None
Admite caracteres comodín:False
DontShow:False
Alias:NoOverwrite

Conjuntos de parámetros

(All)
Posición:Named
Mandatory:False
Valor de la canalización:False
Valor de la canalización por nombre de propiedad:False
Valor de los argumentos restantes:False

-OutputDirectory

Especifica una ruta de acceso y una carpeta específicas en las que guardar una transcripción. PowerShell asigna automáticamente el nombre de la transcripción. Si usa una ruta de acceso relativa, la ruta de acceso es relativa al Documents directorio en Windows. En Linux y macOS, la ruta de acceso es relativa al directorio principal.

Propiedades del parámetro

Tipo:String
Valor predeterminado:None
Admite caracteres comodín:False
DontShow:False

Conjuntos de parámetros

ByOutputDirectory
Posición:0
Mandatory:False
Valor de la canalización:False
Valor de la canalización por nombre de propiedad:False
Valor de los argumentos restantes:False

-Path

Especifica una ubicación para el archivo de transcripción. Escriba una ruta de acceso a un archivo .txt. No se permiten comodines. Si alguno de los directorios de la ruta de acceso no existe, se produce un error en el comando.

Si no especifica una ruta de acceso, Start-Transcript usa la ruta de acceso en el valor de la variable global $Transcript. Si no ha creado esta variable, Start-Transcript almacena las transcripciones en la ubicación y el nombre de archivo predeterminados.

Propiedades del parámetro

Tipo:String
Valor predeterminado:None
Admite caracteres comodín:False
DontShow:False

Conjuntos de parámetros

ByPath
Posición:0
Mandatory:False
Valor de la canalización:False
Valor de la canalización por nombre de propiedad:False
Valor de los argumentos restantes:False

-UseMinimalHeader

Anteponer un encabezado corto a la transcripción, en lugar del encabezado detallado incluido de forma predeterminada. Este parámetro se agregó en PowerShell 6.2.

Propiedades del parámetro

Tipo:SwitchParameter
Valor predeterminado:None
Admite caracteres comodín:False
DontShow:False

Conjuntos de parámetros

(All)
Posición:Named
Mandatory:False
Valor de la canalización:False
Valor de la canalización por nombre de propiedad:False
Valor de los argumentos restantes:False

-WhatIf

Muestra lo que sucedería si el cmdlet se ejecuta. El cmdlet no se ejecuta.

Propiedades del parámetro

Tipo:SwitchParameter
Valor predeterminado:False
Admite caracteres comodín:False
DontShow:False
Alias:Wi

Conjuntos de parámetros

(All)
Posición:Named
Mandatory:False
Valor de la canalización:False
Valor de la canalización por nombre de propiedad:False
Valor de los argumentos restantes:False

CommonParameters

Este cmdlet admite los parámetros comunes: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction y -WarningVariable. Para obtener más información, vea about_CommonParameters.

Entradas

None

No se pueden canalizar objetos a este cmdlet.

Salidas

String

Este cmdlet devuelve una cadena que contiene un mensaje de confirmación y la ruta de acceso al archivo de salida.

Notas

Para detener una transcripción, use el cmdlet Stop-Transcript.

Para grabar una sesión completa, agregue el comando Start-Transcript al perfil. Para obtener más información, vea about_Profiles.