1. Diese Seite verwendet Cookies. Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies. Weitere Informationen
  2. Unsere jährliche Weihnachts-Banner-Aktion hat begonnen! Wir freuen uns auf viele, viele kreative Vorschläge.
    Mehr dazu könnt Ihr hier nachlesen: Weihnachtsbanner 2016

    Information ausblenden

Kommando nicht in der history speichern

Dieses Thema im Forum "Unix & Terminal" wurde erstellt von KayHH, 14.03.10.

  1. KayHH

    KayHH Cripps Pink

    Dabei seit:
    02.03.10
    Beiträge:
    151
    Moin Moin,

    gibt es eine einfache Möglichkeit dafür zu sorgen, dass ein einzelnes Kommando nicht in der history gespeichert wird? Ich kann zwar mit der Option „-d“ nachträglich einen Eintrag löschen, aber dafür benötige ich die Eintragsnummer, die natürlich jedes mal eine andere ist.



    KayHH
     
  2. Rastafari

    Rastafari Golden Noble

    Dabei seit:
    10.03.05
    Beiträge:
    17.896
    Code:
    # History-Funktion abschalten:
    set +o history
    
    [COLOR="DarkGreen"]# Schmuddeldownload starten:
    curl -C - --url 'http://www.youpron.com/blubb...'[/COLOR]
    
    # wieder einschalten:
    set -o history 
     
    fyysh gefällt das.
  3. KayHH

    KayHH Cripps Pink

    Dabei seit:
    02.03.10
    Beiträge:
    151
    LOL

    bei mir wäre es dann doch eher sowas

    Code:
    set +o history
    ./installbuilder.sh --mode unattended --mysql_password PASSWORT
      --phpmyadmin_password PASSWORT --mysql_port 3306
      --apache_server_port 8080 --apache_server_ssl_port 8443
      --base_user ICH --base_user_name ICH --prefix /MAMP
    set -o history
    Danke, das lässt sich ja schon mal ganz gut in ein Script einbauen.



    KayHH



    PS: Darf Dir leider kein Karma geben, versuch es mir zu merken.
     
    #3 KayHH, 14.03.10
    Zuletzt bearbeitet: 14.03.10
  4. koksnutte

    koksnutte Ribston Pepping

    Dabei seit:
    13.04.05
    Beiträge:
    299
    ne kleine anregung:
    um das ganze einfach über ein kommando triggern zu können könntest du so ein script benützen:

    Code:
    #!/bin/bash
    
    if [ -e ~/.hist_disabled ]; then
    	set -o history
    	rm ~/.hist_disabled
    	echo "*** History active ***"
    	exit 0
    fi
    
    set +o history
    touch ~/.hist_disabled
    echo "*** History disabled ***"
    exit 0
    
    theoretisch könnte man das ganze nun so weit ausbauen das dir im shell-prompt angezeigt wird ob denn nun die kommandos in der history gelogt werden oder nicht... :-D
     
    KayHH gefällt das.
  5. FrankR

    FrankR Kleiner Weinapfel

    Dabei seit:
    15.11.07
    Beiträge:
    1.144
    Bei der Bash kannst Du auch mit der Variable HISTIGNORE arbeiten.

    Code:
    $ man bash
    HISTIGNORE
                  A colon-separated list of patterns used to decide which  command
                  lines  should  be  saved  on  the history list.  Each pattern is
                  anchored at the beginning of the line and must  match  the  com-
                  plete  line  (no  implicit  `*'  is  appended).  Each pattern is
                  tested against the line after the checks specified  by  HISTCON-
                  TROL  are  applied.   In  addition  to  the normal shell pattern
                  matching characters, `&' matches the previous history line.  `&'
                  may  be  escaped  using  a  backslash;  the backslash is removed
                  before attempting a match.  The second and subsequent lines of a
                  multi-line compound command are not tested, and are added to the
                  history regardless of the value of HISTIGNORE.
    
    z.B. wird bei einem
    Code:
    $ HISTIGNORE="foo *:foo"
    weder das Kommando "foo" noch "foo bar" in der History gespeichert.
     
    KayHH gefällt das.
  6. KayHH

    KayHH Cripps Pink

    Dabei seit:
    02.03.10
    Beiträge:
    151
    Moin Moin

    @FrankR: Das mit HISTIGNORE ist ein guter Tipp. Hab das mal mit einem selten benötigten Kommando ausprobiert und es scheint zu funktionieren. So wie es aussieht merkt sich HISTIGNORE immer nur die letzte Eingabe, was aber nichts macht, da man ja mehrere Worte ausschließen kann. HISTIGNORE="* password *" sollte für meine Zwecke also funktionieren. Werde das anwenden, wenn ich wieder an dem Rechner auf dem es relevant ist sitze.

    @koksnutte: Dein Script ist sicher auch eine Lösung, aber die von FrankR finde ich etwas smarter. Hab's mir trotzdem mal abgespeichert, man weiß ja nie … :)



    Danke für Eure Hilfe


    KayHH
     
  7. FrankR

    FrankR Kleiner Weinapfel

    Dabei seit:
    15.11.07
    Beiträge:
    1.144
    Hmm, so richtig weiß ich nicht, was Du mit letzter Eingabe meinst - es ist eben eine Variable, wenn Du da was anderes reinschreibst, ist der alte Inhalt eben "weg" - aber schön, wenn es jetzt so funktioniert.
     

Diese Seite empfehlen