1 votos

history -d no elimina la entrada del historial, pero muestra la hora de la entrada del historial

En su documentación, https://ss64.com/osx/history.html dice el -d seguido del ID de la entrada del historial eliminará una entrada del historial de comandos. En la imagen de abajo puedes ver que sólo me muestra 15 entradas después del número dado con el tiempo al lado. Eliminando -d hace lo mismo, pero el tiempo no se muestra.

¿Qué pasa con esto? ¿Y cómo puedo eliminar una entrada si la forma oficial no funciona?

Edición: Me he dado cuenta al teclear type history que utilizando omz introdujeron algunas normas no omz_history que podría estar causando el problema.

demonstration

2voto

Phill Puntos 126

El history La página de manual a la que te refieres se aplica al shell Bash, pero parece que estás usando Zsh, por eso el comportamiento difiere.

history es un shell incorporado

¿Por qué es relevante el shell que se ejecuta? Porque history es un comando integrado en el shell, es decir, no es un archivo ejecutable externo instalado en su Mac, sino un comando integrado en el shell.

Zsh y history

Si comprueba man zsh encontrará que history es un alias de fc -l :

history
   Same as fc -l

y:

fc
   The fc command controls the interactive history mechanism.
   When the -l flag is given, the resulting events are listed on standard output.

y -d es una de las opciones disponibles para fc :

   -d     prints timestamps for each event

que es exactamente el comportamiento que se obtiene.

Equivalente a history -d en Zsh

Desgraciadamente, fc no incluye una opción para eliminar líneas en el archivo de historial, pero hay soluciones, por ejemplo, compruebe esta respuesta https://stackoverflow.com/a/63494771 .

Bash como shell por defecto

Si quieres usar Bash en lugar de Zsh en Terminal:

  1. Terminal de lanzamiento
  2. Abra la ventana de Preferencias pulsando Command,
  3. Seleccione Shells open con Command y escriba /bin/bash : enter image description here

IMPORTANTE : La versión de Bash incluida en MacOS es bastante antigua ( a partir de MacOS Catalina, el shell por defecto en MacOS es Zsh y Bash está obsoleto), por lo que si planeas usar Bash regularmente, te recomiendo que instales Brew y luego Bash .

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X