#linux #console

Z-Shell (zsh)

Die Z-Shell ist eine sehr leistungsfähige Alternative zur Standard-Shell vieler Distributionen, der Bash. Jedoch zeigt sich die zsh nach der Installation nicht sehr 'kooperativ'. Ein guter Anfang können die Konfigurationsdateien der Distribution wpde>Grml sein ((Da grml eine Debian-basierte Distribution ist, sind einige Debian-spezifische Fuktionen enthalten. Die angesprochenen Fuktionen werdenauf anderen Systemen nicht weiter stören, da sie einfach nicht funktionieren werden.)):

wget -O .zshrc http://git.grml.org/f/grml-etc-core/etc/zsh/zshrc

Die Fuktionen sind auf der grml-zsh-refcard (PDF) gut dokumentiert, ausdrucken lohnt sich.

Folgende Zeile - vorzugsweise in der ~/.zshrc.local - zeigt in der killall [tab-completition] alle Prozesse des Benutzers an, auch der X-Sitzung.
zstyle ':completion:*:processes-names' command 'ps c -u ${USER} -o command | uniq'

Screen

Auf für Screen hält grml eine durchaus sinnvolle Konfiguration bereit:
wget -O ~/.screenrc 'http://git.grml.org/?p=grml-etc-core.git;a=blob_plain;f=etc/grml/screenrc;hb=HEAD'
Allerdings sollte man folgende Zeilen auskommentieren, sofern man nicht die Programme cpu-screen und ip-screen aus von grml auf dem System hat((oder installieren via .deb Paket von http://deb.grml.org/pool/main/g/grml-scripts/)):
#backtick 1 0 60 /usr/bin/cpu-screen
#backtick 2 0 60 /usr/bin/ip-screen

Diverses

Kalender

Kommunikation

Mutt

Dokumentation

Newsreader & RSS

Newsreader

slrn

RSS

* Snownews
* Newsbeuter

Instant Messaging

SSH

Editoren

Sys-Admin's Tools

# nice functions for VCS 
# usage: (hg|svn|cvs)diff [file or dir]
# or     diffless [file1] [file2]

if [ -x "$(which colordiff)" ] ; then 
        if [ -x "$(which less)" ] ; then
                lessdiff () { diff -ruN $1 $2 | colordiff | less -R }
        fi

        if [ -x "$(which cvs)" ] ; then
                cvsdiff () { cvs diff -uN "${@}" | colordiff | less -R }
        fi

        if [ -x "$(which svn)" ] ; then
                svndiff () { svn diff "${@}" | colordiff | less -R }
        fi

        if [ -x "$(which hg)" ] ; then
                hgdiff () { hg diff "${@}" | colordiff | less -R }
        fi
fi
```</box>
* iftop - Monitoring von Netzwerktraffic
* ncdu - 'grafische' Oberfläche für du (ab Debian lenny)
* pwgen - sichere Passwörter, alternativ
<html>head -c12 /dev/random | uuencode -m - | sed -n '2s/=*$//;2p'</html>
* [colored man pages](http://nion.modprobe.de/blog/archives/569-colored-manpages.html)
* tree - Verzeichnissinhalte als Baum

##  Grafik / PDF 
* [fbi/fbgs](http://linux.bytesex.org/fbida/) - Pixelgrafiken und PDF auf der Konsole ansehen (nicht unter X-Terminals, nur echte tty's)
    * [Debian Pakete](http://packages.debian.org/search?suite=default&section=all&arch=any&searchon=names&keywords=fbi)
* für andere Terminals (X, SSH)

  pdftotext pdf-file.pdf - | less
  oder 
  lesspipe

##  Linux Logo 
* http://www.linux-user.de/ausgabe/2007/08/086-zubefehl/index.html?print=y
* http://www.deater.net/weave/vmwprod/linux_logo/USAGE
Um das Logo über MOTD anzuzeigen müssen bei Debian noch folgende Änderungen durchgeführt werden:
<box 98% round|Änderungen für Anzeige über MOTD>

Index: /etc/init.d/bootmisc.sh

--- /etc/init.d/bootmisc.sh (Revision 24)
+++ /etc/init.d/bootmisc.sh (Arbeitskopie)
@@ -40,7 +40,7 @@
fi

# Update motd

##  Werkzeugkiste 
* mit sed - Stream Editor rekursiv Suchen und ersetzen

  find . -type f -exec sed -i 's/search/replace/g' {} +

* Lange, umgebrochene dn's in einer langen Zeile darstellen ((http://www.computing.net/answers/linux/remove-leading-space-and-join-previous-line/31227.html))

  sed -e :a -e '$!N;s/n //;ta' -e 'P;D' file.ldif