Nieuws:

Welkom, Gast. Alsjeblieft inloggen of registreren.
Heb je de activerings-mail niet ontvangen?

Auteur Topic: Wat tips voor terminaltijgers  (gelezen 2724 keer)

Offline Johan van Dijk

  • Administrator
    • johanvandijk
Wat tips voor terminaltijgers
« Gepost op: 2013/03/16, 12:00:01 »
Bij deze een topic om je tips te plaatsen die het leven op de CLI wat kunnen vergemakkelijken :)

Wat aanpassingen voor je ~/.bashrc
Vergroot het aantal regels dat in de bash history bijgehouden wordt door de onderstaande variabelen aan te passen. Ik heb ze hier op 100000 staan, dat moet ruim genoeg zijn voor de komende jaren :)
HISTSIZE=100000
HISTFILESIZE=100000

Voeg de datum en tijd toe aan de history, zodat je kan zien wanneer je iets uitgevoerd hebt. Voeg dit toe:
HISTTIMEFORMAT='%Y-%m-%d %H:%M:%S - '

In plaats van 1999  echo "hallo wereld" komt er zoiets te staan: 1999  2013-03-16 11:47:16 - echo "hallo wereld"

Sla de history direct op nadat je een commando uitgevoerd hebt, in plaats van dat alles in 1 keer opgeslagen wordt zodra je de terminal afsluit:
PROMPT_COMMAND='history -a' toevoegen.

Deze staat er al in sinds Ubuntu 12.04 geloof ik:
# Add an "alert" alias for long running commands.  Use like so:
#   sleep 10; alert
alias alert='notify-send --urgency=low -i "$([ $? = 0 ] && echo terminal || echo error)" "$(history|tail -n1|sed -e '\''s/^\s*[0-9]\+\s*//;s/[;&|]\s*alert$//'\'')"'
Je kan de "alert" alias toevoegen na een langdurend commando, zodat wanneer die klaar is je een mooie notificatie te zien krijgt met de status van dat commando. Zodat je meteen ook kan zien of er fouten waren of niet.

Heb je nog meer handige tips voor de terminal? Plaats ze hier :)
Heb je langere stukken code, plaats ze dan in het topic over scripts.
« Laatst bewerkt op: 2013/03/16, 12:04:29 door Johan van Dijk »

Re: Wat tips voor terminaltijgers
« Reactie #1 Gepost op: 2013/03/16, 13:22:48 »
Interessant!
Is er ook een manier om ala webbrowser de eerste letters ve eerder gebruikt commando te typen en dat de terminal dan aanvult/opties weergeeft?
Nu moet ik bij commando's die ik lang geleden heb gebruikt (en niet meer precies weet) door de geschiedenis ploegen.

VV

Offline Bloom

  • Lid
Re: Wat tips voor terminaltijgers
« Reactie #2 Gepost op: 2013/03/16, 13:25:24 »
Jawel: gewoon de eerste letters typen en dan de tab-toets indrukken.
Als hij niks laat zien is er nog dubieusiteit en moet je nog een paar letters bijtypen en dan nogmaals op tab drukken.

Offline Johan van Dijk

  • Administrator
    • johanvandijk
Re: Wat tips voor terminaltijgers
« Reactie #3 Gepost op: 2013/03/16, 13:30:59 »
Als je op control-r duwt kan je ook zoeken in de history. Je kan een deel van een commando dat je eerder uitgevoerd hebt intikken en hij zoekt het commando dat er bij past op.

Re: Wat tips voor terminaltijgers
« Reactie #4 Gepost op: 2013/03/16, 13:54:24 »
In de instellingen van GNOME Terminal kun je ook het aantal scrollback-regels veranderen ;)

En dat laatste kun je ook dieper oplossen met undistract-me (of zelf de code daarvan gebruiken): http://www.iloveubuntu.net/be-notified-completed-terminal-commands-undistract-me-handy-terminal-functionality

Trouwens, die hist-dinges die de datum en tijd van een commando laat zien werkt hier niet. Heb het in .bashrc gezet, daarna source .bashrc gedaan maar niks datum of tijd.

Offline Johan van Dijk

  • Administrator
    • johanvandijk
Re: Wat tips voor terminaltijgers
« Reactie #5 Gepost op: 2013/08/30, 08:31:48 »
Een handige pagina die uitlegt wat alle onderdelen van een opdracht doen: http://explainshell.com/

Re: Wat tips voor terminaltijgers
« Reactie #6 Gepost op: 2013/08/30, 11:06:23 »
Mooi, die is gebookmarkt :P

Offline HarzG

  • Lid
Re: terminal | zoeken naar en hergebruiken van oudere commando's
« Reactie #7 Gepost op: 2013/08/30, 15:04:39 »
Bedankt voor de tip Johan.

... kleine aanvulling ... zoeken naar ...

De snelste manier van zoeken naar oudere commando's van recente datum: gewoon met de pijltjestoets naar boven bladeren. Dat is "te doen" voor opdrachten die de laatste 2 (?) dagen zijn uitgevoerd.

Weet je "het wanneer" van een commando niet meer maar wel de beginletters, dan is Ctrl-R inderdaad handig. Helaas werkt dat niet meer zo simpel als je veel opdrachten hebt uitgevoerd met dezelfde beginletters.

Heel snel werkt ook de opdracht
historyDan kan je naar boven bladeren door de history naar de opdracht die je zocht.

Een aantrekkelijk alternatief voor gevallen dat je een oud commando opnieuw, maar dan iets gewijzigd wilt uitvoeren, is het openen van het bestand ~/.bash_history met een tekstverwerker. Daarin kan je met Ctrl-F zoeken naar een tekst-stuk waaraan je je vaag nog kan herinneren. NB: Het is  je uiteraard niet de bedoeling het bestand te bewerken en gewijzigd te bewaren.
Xubuntu 20.04; siduction-15.1.0 Xfce

Re: Wat tips voor terminaltijgers
« Reactie #8 Gepost op: 2013/08/30, 15:40:37 »
Het doorzoeken kan ook snel met history | grep zoekterm dan krijg je alle regels uit de history die met dat patroon matchen.

Offline Johan van Dijk

  • Administrator
    • johanvandijk
Re: Wat tips voor terminaltijgers
« Reactie #9 Gepost op: 2013/10/20, 21:39:13 »
Weer een handige tip, deze keer voor bash scripts :)

http://www.shellcheck.net/ checkt je script op allerlei fouten en geeft je tips over hoe je bepaalde constructies kan verbeteren.

Offline jvecht

  • Lid
    • Just Vecht
Re: Wat tips voor terminaltijgers
« Reactie #10 Gepost op: 2013/10/20, 22:55:05 »
Het doorzoeken kan ook snel met history | grep zoekterm dan krijg je alle regels uit de history die met dat patroon matchen.

Ik had deze zoekmethode een keer langs zien komen, maar weer vergeten. Ik vind dat history toch al zo super handig en met dit erbij is het echt een feestje. Thanks Erik! Gouden tips, zoiets ...

met vriendelijke groeten,

Just Vecht
GIMP bundel 2018  38 cursussen met mooi oefenmateriaal. Lekker lezen of er wat van opsteken!
  Boekje "Werken met Xubuntu" 5000+ downloads!
     Het Helpmij Magazine Mei 2021

Re: Wat tips voor terminaltijgers
« Reactie #11 Gepost op: 2013/10/21, 14:56:57 »
Graag gedaan :)

Het kan nog iets korter met een alias in het bestand ~/.bashrc

Ik heb de volgende regel toegevoegd (ipv hgrep kun je ook een andere naam kiezen)
alias hgrep="history | grep -i"
Nu kun je de geschiedenis doorzoeken met
hgrep zoekterm
De -i parameter van grep schakelt hoofdlettergevoeligheid uit.