Gå till innehåll
Just nu i M3-nätverket

Angående Terminal-historik


MochiDoch

Rekommendera Poster

Hej,

 

Förrän nyligen så har aldrig historiken i Terminal dykt upp varje gång man startar Terminal. Vad jag vet så har jag heller inte gjort några justeringar med inställningarna. Därför undrar jag om man kan gå tillbaka till att historiken aldrig syns när man stänger Terminal och startar en ny.

 

Tack på förhand!

Länk till kommentar
Dela på andra webbplatser

bash-historiken spars i filen ~/.bash_history

 

man bash:

"When a login shell exits, bash reads and executes commands from the

file ~/.bash_logout, if it exists."

 

Du borde kunna rensa historiken genom att i den filen lägga in kommandot 'history -c'

Länk till kommentar
Dela på andra webbplatser

Hej,

 

Förrän nyligen så har aldrig historiken i Terminal dykt upp varje gång man startar Terminal. Vad jag vet så har jag heller inte gjort några justeringar med inställningarna. Därför undrar jag om man kan gå tillbaka till att historiken aldrig syns när man stänger Terminal och startar en ny.

 

Tack på förhand!

Tror det har att göra med hur du avslutade din förra session, om du loggade ut med "exit" och avlutade programmet, eller inte. Har för mig att om man inte gör det så kommer det upp nästa gång de 4-5 sista raderna från förra gången.

 

 

Du kan kolla i Systeminställningar->Allmänt näst längst ner där, om det är ikryssat med att återställa fönster.

 

Eller stäng av via terminal:

# För Terminal
defaults write com.apple.Terminal NSQuitAlwaysKeepsWindows -bool false

# För alla program
defaults write NSGlobalDomain NSQuitAlwaysKeepsWindows -bool false

Länk till kommentar
Dela på andra webbplatser

  • 2 years later...

Eftersom det redan fanns ett ämne om Terminalhistorik, så forts jag här...

- - -

Lite tweaks och fix för Terminahistoriken


För att göra det lite trevligare och smidigsare i Terminalen/historiken så kan man sätta lite värden i .bash_profile, eller om man kör med .bashrc.

Eftersom vi har OS X, så kör vi ju ibland med “defaults write ...” för att fixa med inställningar i olika porogram elle i systemet. En bra ide är att spara just alla dem till en egen fil, så vet man vilka man kört utan att behöva kolla igenom hela historiken. Kan ju vara bra till ngn uppgradering och man vill köra in samma igen.

# Spara alla defaults write
PROMPT_COMMAND='echo "$(history 1 | grep "defaults")" | sed '/^$/d' >> $HOME/ShellScripts/__defaultsLog.txt'

Den raden spara alla defaults write man kört och puttar på dem i filen: “~/ShellScripts/__defaultsLog.txt”. Det kan man välja vilken fil man vill. Det är var jag har mina.

Längre ner i filen kan man lägga till:

export HISTFILESIZE=15000
export HISTSIZE=15000

Det sätter storleken/längden på filen. Låter mkt men det är bra att överdosera lite där.

Sen en väldigt effektiv inställning:

# Inga dubletter
# ignoreboth (ignoredups + ignorespace)
export HISTCONTROL=ignoreboth:erasedups

Den sorterar bort dubletter, och även lägger in ett filter som gör att om man skriver ett kommando, men man börjar med ett blanksteg, så lägger den inte till det kommandot till Terminalhistoriken (ref. ignorespace).

Väldigt smidigt om man skall skriva in nåt känsligt - t ex lösenord och sånt som man inte vill ha ligga i historiken - så slipper man in där sen och rensa manuellt. :crossfingers:

Avslutningsvis:

shopt -s histappend
PROMPT_COMMAND="$PROMPT_COMMAND;history -a"

Som gör att varje kommando man kör läggs till historiken direkt, istället för när man stänger ner fönstret (sessionen) sen. Det gör att om man har fler fönster öppna så har man tillgång till dem i de andra fönstren.


Sen finns mkt annat man kan lägga till i den filen, men som lite lagom trivsel inställningar är de bra. I o m att den sorterar bort dubletter så växer inte historiken lika fort. Oftast kör man ju liknande saker lite då och då.

 

code_idea.gif

Länk till kommentar
Dela på andra webbplatser

Arkiverat

Det här ämnet är nu arkiverat och är stängt för ytterligare svar.



×
×
  • Skapa nytt...