En informática , varios intérpretes de comandos mantienen un registro de los comandos emitidos por el usuario durante la sesión actual . El historycomando trabaja con la lista de historial de comandos . Cuando el comando se emite sin opciones, imprime la lista de historial. Los usuarios pueden proporcionar opciones y argumentos al comando para manipular la visualización de la lista de historial y sus entradas. El funcionamiento del comando history también puede verse influenciado por las variables de entorno del intérprete de comandos . Por ejemplo, se puede configurar una variable de entorno para controlar la cantidad de comandos que se conservarán en la lista. [ 1 ]
Historia
En las primeras versiones de Unix, el comando history era un programa independiente . Sin embargo, la mayoría de los intérpretes de comandos incluyen desde hace tiempo el comando history como un comando integrado , por lo que el programa independiente ya no se usa comúnmente.
Implementaciones
El comando está disponible en varios shells de Unix , así como en PowerShell , ReactOS , [ 2 ] y KolibriOS . [ 3 ] También se incluye como comando externo en PTS-DOS , donde mantiene una parte residente, a veces en memoria convencional. [ 4 ]
Dado que la mayoría de los comandos de historial actuales son comandos integrados del shell, los detalles dependen de la elección del shell .
intento
El historycomando tiene la siguiente sintaxis en bash : [ 5 ]
historial [-c] [-d desplazamiento] [n] historial -awrn [nombre de archivo] historial -ps arg [arg...]
tcsh
El historycomando tiene la siguiente sintaxis en tcsh :
historia [ -hTr ] [n] historial -S | -L | -M [nombre de archivo] (+) historial -c (+)
La primera opción imprime la lista de eventos del historial. Si se especifica n, solo se imprimen o guardan los n eventos más recientes. Con -h , la lista del historial se imprime sin números iniciales. Si se especifica -T , las marcas de tiempo también se imprimen en forma de comentario . (Esto puede usarse para generar archivos adecuados para cargar con 'history -L' o 'source -h'). Con -r, el orden de impresión es del más reciente al más antiguo.
Con -S , la segunda forma guarda la lista de historial en el archivo especificado. Si la primera palabra de la variable de shell `savehist` es un número, se guardan como máximo esa cantidad de líneas. Si la segunda palabra de `savehist` es ` merge` , la lista de historial se fusiona con el archivo de historial existente en lugar de reemplazarlo (si existe) y se ordena por marca de tiempo. (+) La fusión está pensada para un entorno como el Sistema X Window con varios shells en uso simultáneo. Actualmente, solo funciona cuando los shells se cierran correctamente uno tras otro.
Con -L , el intérprete de comandos agrega el archivo, que presumiblemente es una lista de historial guardada por la opción -S o el mecanismo savehist, a la lista de historial. -M es similar a -L, pero el contenido del archivo se fusiona con la lista de historial y se ordena por marca de tiempo . En ambos casos, se usa histfile si no se proporciona el archivo y ~/.history si no se especifica. `history -L` es exactamente igual que `source -h` excepto que no requiere un archivo.
Tenga en cuenta que los shells de inicio de sesión realizan el equivalente a `history -L` al arrancar y, si se ha configurado `savehist`, `history -S` antes de salir. Dado que normalmente solo se carga `~/.tcshrc` antes que `~/.history`, `histfile` debe configurarse en `~/.tcshrc` en lugar de en `~/.login`.
Si se establece histlit, la primera y la segunda forma imprimen y guardan la forma literal (sin expandir) de la lista de historial.
El último formulario borra el historial.
PowerShell
En PowerShell , history es un alias de comando predefinido para el Get-Historycmdlet . Además, PowerShell incluye los cmdlets , , y . Los Add-Historycmdlets Clear-Historycumplen Get-Historyla misma función que el comando tipo Unix .Invoke-History*-Historyhistory
Obtener-Historial [[-Id] <Int64[]>] [[-Count] <Int32>] [<ParámetrosComunes>] Agregar historial [[-Objeto de entrada] <Objeto PS[]>] [-Passthru] [<Parámetros comunes>] Borrar historial [[-Id] <Int32[]>] [[-Count] <Int32>] [-Newest] [-Confirm] [-WhatIf] [<CommonParameters>] Borrar historial [[-Count] <Int32>] [-CommandLine <String[]>] [-Newest] [-Confirm] [-WhatIf] [<CommonParameters>] Historial de invocación [[-Id] <Cadena>] [-Confirmar] [-QuéSi] [<Parámetros comunes>]
Símbolo del sistema de ReactOS
Actualmente, el historycomando del Símbolo del sistema de ReactOS solo admite la impresión de la lista de historial.
Véase también
Referencias
- ↑ "Uso del historial para repetir comandos" . Universidad de Washington . Consultado el 25 de julio de 2013 .
- ↑ "Reactos/Reactos" . GitHub . 3 de noviembre de 2021.
- ↑ «Shell - wiki de KolibriOS» .
- ↑ "Manual de usuario de PTS-DOS 2000 Pro" (PDF) . Buggingen, Alemania: Paragon Technology GmbH . 1999. Archivado (PDF) del original el 12 de mayo de 2018. Consultado el 12 de mayo de 2018 .
- ↑ Versión del kernel de Darwin 15.0.0: sábado 19 de septiembre de 2015, 15:53:46 PDT
Lecturas adicionales
- McElhearn, Kirk (2006). La línea de comandos de Mac OS X: Unix bajo el capó . John Wiley & Sons . ISBN 978-0470113851.
- Comandos de ReactOS
- Software Unix
- Administración de Windows