Das Blog von Benni und Jonas
  • LoG: Von Ausrufezeichen und Akzenten

    Geschrieben am 17. November 2009 benni 10 Kommentare

      Passend zu unserer Linux ohne Grafikreihe gebe ich nun ein paar Kurztipps zur Minikorrektur bei fehlerhaft eingegebenen Befehlen in der Konsole.
      Einigen wird sicherlich schon einmal aufgefallen sein, dass ein Druck auf die Taste im Terminal den zuletzt aufgerufenen Befehl wieder aufnimmt. Das ist ja ganz praktisch, für mache Zwecke allerdings etwas umständlich. Führt man z.B. einen Befehl aus, ohne Superuser Rechte zu besitzen, obwohl diese notwendig wären, handeln viele so: sie tippen den gesamten Befehl erneut ein, diesmal z.B. mit einem sudo davor, oder sie drücken besagt -Taste, bis der Cursor vor dem Befehl ist und ergänzen ihn dann mit sudo. Aber es geht auch einfacher!

      Ein simples sudo !! erfüllt den gleichen Zweck, nur um einiges schneller! Die beiden Ausrufezeichen stehen in diesem Fall für den zuletzt ausgeführten Befehl. Es gibt noch weitere von diesen Ereignisbezeichnern:

      • !! steht für den vorangegangenen Befehl, z.B.
        $ apt-get install foo
         E: [...] (13: Permission denied)
         E: [...], are you root?
        $ sudo !!
         sudo apt-get install foo
         [sudo] password:
         Paketlisten werden gelesen... Fertig
         [...]
      • !-n steht für den Befehl, der vor n Befehlen kam, z.B.
        $ apt-get install foo
         E: [...] (13: Permission denied)
         E: [...], are you root?
        $ sudp !!
         sodp: command not found
        $ sudo !-2
         sudo apt-get install foo
         [sudo] password:
         Paketlisten werden gelesen... Fertig
         [...]
      • !foo steht für den zuletzt benutzen Befehl, der mit foo beginnt, z.B.
        $ !ls
        lspci
        00:00.0 Host bridge: ATI Technologies Inc RS690 Host Bridge
        00:02.0 PCI bridge: [...]
      • !?foo steht für den zuletzt benutzten Befehl, der die Zeichenfolge foo enthält
      • ^foo^bar führt den vorhergehenden Befehl erneut aus, ersetzt jedoch foo durch bar, z.B.
        $ sudp apt-get install paket
         sodp: command not found
        $ ^sudp^sudo
         sudo apt-get install paket
         [sudo] password:
         Paketlisten werden gelesen... Fertig
         [...]

      Ich finde diese Ereignsibezeichner (Event designators) sehr nützlich, da sich Tippfehler sehr schnell und effektiv bearbeiten lassen. Viel Erfolg damit ;-)

      Share and Enjoy:
      • Facebook
      • Digg
      • del.icio.us
      • Google Bookmarks
      • Identi.ca
      • MisterWong.DE
      • MySpace
      • Reddit
      • Slashdot
      • Twitter
       

      Kommentare:

      • !foo steht für den häufigsten? Unter welcher Bashversion denn? Bei mir unter Hardy steht es für den zuletzt genutzten – oder kamst du da mit dem Abschnitt untendrunter durcheinander (da stimmt das bei mir aber auch nicht)?

      • Hi onli,

        natürlich hast du recht, es ist jeweils der letzte Befehl, der ausgeführt wurde (habs im Text verbessert).
        Danke :)

      • viel zu umständlich. Zumindest für den ersten Anwendungsfall gibt es die Taste Pos1.

      • @dump pos1 gibt es aber nicht auf jeder tastatur (angeblich :) ) besser wäre CTRL + a

      • Danke für diese Info, habe ich noch gar net gewusst!

      • Das kommt wie gerufwn, och verdibbe mich nömkodzt srhuoapg
        gqwdfrzh
        sswtu

      • Und wieder was gelernt… besten dank für “sudo !!”

        Ach, hier an meinem Macbook gibt es zB kein POS1.. :)

      • Hi,
        auch ich bedanke mich fuer sudo !! ;) ich nutze nun schon viele jahre linux sowohl daheim wie auhc im berufsleben, bin aber immer wieder überrascht das ich über kleinigkeiten in der shell dem vi oder sonstwo stolper die ich noch nicht kannte!

        thx j:


      2 Trackbacks / Pingbacks

      Einen Kommentar schreiben: