Diese Woche in der Konsole #8

Posted on August 30th, 2009 in Konsole | 2 Comments »

  1. Wissenswerte Tastenkürzeln

    CTRL l Leert den gesamten Bildschirm, das selbe wie der Befehl clear.

    CTRL w Löscht nach links einzelne Wörter ab der Cursorposition.

    CTRL r Inkrementelle Suche durch die Liste der letzt ausgeführten Befehle (bash history).

    ! ! Den letzten Befehl wiederholen.

    CTRL d Um die Sitzung zu beenden, das selbe wie der Befehl exit.

  2. Wenn der letzte Befehl einen einfachen Schreibfehler hat wie hier eine “3″ wo ein “e” sein sollte, so ist es möglich eine Korrektur vorzunehmen:
    $ echo "F3hler"
    F3hler
    
    $ ^3^e
    echo "Fehler"
    Fehler
    
  3. Herausfinden welcher Prozess (Id) auf Port 31337 lauscht.

    $ sudo fuser 31337/tcp
    31337/tcp:           29883
    
  4. Dateien umbennen mit rename. Als Beispiel werden alle .htm zu .html Dateien umbenannt.
    $ rename htm html *htm
  5. In vim Deutsche Rechtschreibprüfung verwenden mit dem Paket vim-spell-de.
    :setlocal spell spelllang=de

    Danach sind alle falsch geschriebenen Wörter farblich markiert.

  6. Dateiinhalte von unten nach oben anzeigen lassen, ein verkehrtes cat eben :)

    $ tac datei.txt
  7. Kopf oder Zahl ohne Münze.
    $ ruby -e 'puts ["Kopf", "Zahl"][rand(2)]'
    Kopf
    

KDE Konsole VS Gnome-Terminal

Posted on August 5th, 2009 in Gnome, KDE, Konsole, Programme, Ubuntu | 9 Comments »

utilities-terminal

Die KDE Konsole finde ich gegenüber des Gnome-Terminals praktischer. Ich arbeite täglich mit der Konsole und bin froh über die Features die mir Konsole anbietet. Natürlich ist ein Konzept von Gnome benutzerfreundlich zu sein und daher ist es ganz logisch das der Gnome-Terminal minimaler ist. Terminator ist eine Erweiterung die auf Gnome-Terminal aufbaut und z.b. Splitscreens in einen Fenster möglich macht.

Ich möchte in diesen Posting ein paar Funktionen zeigen die mir im Gnome-Terminal abgehen.

Der Scrollback, also alles was schon in der Konsole ausgegeben wurde, kann durchsucht werden. Es ist sogar möglich mit regular expression zu suchen, was sehr hilfreich ist. Ausserdem kann die gesamte Ausgabe auch als Text-Datei gespeichert werden. Der Gnome-Terminal bietet nicht einmal eine einfache Suche an.

Read the rest of this entry »

Diese Woche in der Konsole #5

Posted on August 2nd, 2009 in Konsole, Programmierung | 2 Comments »

Diese Woche in der Konsole

  1. Datei kopieren mit dem selben Namen aber neue Endung (.bkp).

    cp datei{,.bkp}
    
    ls datei*
    datei  datei.bkp
    
  2. FTP Passwort vergessen? Aber es befindet sich noch in einem Programm wie gftp? Dann kann ngrep helfen. Zuerst ngrep auf das Netzwerkdevice lauschen lassen, wie das lautet kann aus ifconfig ausgelesen werden und den FTP Port angeben. Danach kann man sich mit dem Server verbinden und sieht den Login im Klartext vorbeihuschen.
    sudo ngrep -d eth1 port 21
    
    interface: eth1 (192.168.1.0/255.255.255.0)
    filter: (ip or ip6) and ( port 21 )
    #
    T 912.103.134.87:21 -> 192.168.1.4:41085 [AP]
      220 ProFTPD 1.3.0 Server (Debian) [::ffef:912.103.134.87]..
    ##
    T 192.168.1.4:41085 -> 912.103.134.87:21 [AP]
      USER benutzerin..
    ##
    T 912.103.134.87:21 -> 192.168.1.4:41085 [AP]
      331 Password required for benutzerin...
    ##
    T 192.168.1.4:41085 -> 912.103.134.87:21 [AP]
      PASS supergeheim23..
    

    Wie wir hier sehen, ist das Passwort des Benuzters “benutzerin” “supergeheim23″.

  3. Vier Zeilen einer Datei, hier von /etc/passwd per Zufall auslesen.
    shuf /etc/passwd -n 4
  4. Das Ziel eines Symlinks (ln) abkürzen mit einem Punkt.
    Wenn das Ziel eines Symlinks (ln) sich im gerade aktuellen Ordner befindet und der Dateiname der selbe sein soll, braucht es keinen Dateinamen.

    ln -s config/database.yml
    
    ls -al database.yml
    lrwxrwxrwx 1 user user 19 2009-07-31 22:52 database.yml -> config/database.yml
    
  5. Wer so wie ich die Programme “dig” oder “host” unter Ubuntu sucht der findet sie im Paket dnsutils.
    aptitude install dnsutils
  6. Mit der Konsolenversion von HandBrake, ein Video in ein ipodtaugliches Video konvertieren.

    HandBrakeCLI -i video.avi -o video_ipod.mp4 -e x264b13  \
    -b 700 -R 44100 -B 128 -2 -w 320

Diese Woche in der Konsole #4

Posted on July 26th, 2009 in Konsole, Multimedia, Programmierung, Ubuntu | 2 Comments »

Diese Woche in der Konsole

  1. Immer wieder tauchen Base64 enkodierte Dateien auf, mit OpenSSL können sie einfach en/dekodiert werden:decode:
    openssl enc -base64 -in in_file -d

    encode:

    openssl enc -base64 -in in_file -e
  2. Website-Mirror ziehen:
    wget -m -k -K -E http://url/of/web/site
  3. Alle verwendeten IP Adressen anzeigen.
    ifconfig | ruby -n -e 'puts $1 if /addr:(\S+)/'
    192.168.1.4
    127.0.0.1
    
  4. Mp3-Datei in eine Wav-Datei mit ffmpeg umwandeln.
    ffmpeg -i datei.mp3 datei.wav
  5. Mit wget mp3s von example.org runterladen mit den Namen (0 bis 9).
    ruby -e '10.times{|i| %x"wget http://example.org/#{i}.mp3"}'
  6. ~/.bashrc editieren, abspeichern und sofort ausprobieren:
    source ~/.bashrc

    Das funktioniert mit .cshrc etc. natürlich auch…

Diese Woche in der Konsole #2

Posted on July 12th, 2009 in Konsole, Ubuntu | 2 Comments »

Diese Woche in der Konsole

  1. Shell-Ausgaben in die Zwischenablage bekommen mit xsel. Im Beispiel landet die Ubuntu Version in die Zwichenablage und kann mit CTRL v eingefügt werden.
    cat /etc/issue | xsel --clipboard
  2. Backup einer PostgreSQL Datenbank. Das Backup (dump.gz) wird mit gzip komprimiert.
    pg_dump meine_datenbank | gzip > dump.gz
  3. Nachschauen welches Programm den Port 1234 in Verwendung hat. Nützlich wenn man sich nicht sicher ist was da eigentlich läuft.

    netstat -plantu | grep :1234
  4. Vergleichen, mit vimdiff von einer lokalen (local.txt) und einer am Server (remote.txt) liegenden Datei.

    vimdiff local.txt scp://meinname@meinserver/remote.txt
  5. Nur bestimmtes Kommando für Benutzer auf Server über eine ssh-Verbindung zulassen.
    In ~/.ssh/authorized_keys wird vor den Schlüssel des Benutzers command und das Kommando eingetragen.

    command="/bin/ls -al" ssh-rsa AA...PmQ== benutzer@host
    

    Der Benutzer darf jetzt am Server, über ssh nur mehr ein ls -al ausführen.