https://wiki.archlinux.de/api.php?action=feedcontributions&user=Feuri&feedformat=atomwiki.archlinux.de - Benutzerbeiträge [de]2024-03-29T12:16:32ZBenutzerbeiträgeMediaWiki 1.41.0https://wiki.archlinux.de/index.php?title=Zsh&diff=12060Zsh2011-10-23T00:03:29Z<p>Feuri: schreibfehelr berichtigt</p>
<hr />
<div>Um mit dem Betriebssystem zu interagieren, und teilweise auch,<br />
damit das Betriebssystem selbst arbeiten kann,<br />
bedarf es eines Interpreter-Programms, dass die eingegebenen Befehle an<br />
das System weiterreicht.<br />
Unter Unix, und Unix-verwandten Systemen wird<br />
dieser Kommandozeileninterpreter Shell genannt.<br />
Unter Arch ist diese Shell standardmäßig die [[bash]].<br />
Eine Alternative ist die sog. Zsh ("Z-Shell"), die 1990 von Paul Falstad <br />
Princeton University geschrieben wurde.<br />
<br />
==Vorteile==<br />
Die Zsh hat viele Vorteile gegenüber anderen Shells:<br />
*Schneller<br />
*Verbesserte, intelligente Tab Vervollständigung<br />
*Verbessertes Globbing<br />
*Erweiterte Variablen/Array-Handhabung<br />
*Rechtschreibprüfung<br />
*Nachträglich ladbare Module<br />
*Individualisierbarer Prompt<br />
*Eine verbesserte History<br />
<br />
==Installation==<br />
Die Zsh befindet sich in [extra] und lässt sich mit<br />
pacman -S zsh<br />
installlieren.<br />
Weil die Standard Konfiguration ziemlich puristisch ist, kann man auf<br />
eine fertige zurückgreifen, die von der Linux Distribution grml zur Verfügung<br />
gestellt wird. Inzwischen ist diese Konfiguration ebenfalls in [extra] zu finden:<br />
pacman -S grml-zsh-config<br />
<br />
==Optimal : Zsh als Standard Shell einstellen==<br />
Als erstes sollte man den vollständigen Pfad der ZSH herausfinden:<br />
which zsh<br />
<br />
Um die Standardshell für den aktuellen Nutzer zu wechseln, verwendet man<br />
folgenden Befehl:<br />
chsh -s /bin/zsh<br />
<br />
==Hinweise zu der GRML Konfiguration==<br />
Die .zshrc sollte nicht bearbeitet werden, für eigene Einstellungen verwendet<br />
man die Datei '''.zshrc.local'''<br />
Falls man einige Einstellungen verändern will, kann man diese auch in '''.zshrc.pre'''<br />
schreiben, die grml Einstellungen werden dann überschrieben. <br />
Befehle für eine Login Shell kann man unter '''.zprofile''' vornehmen.<br />
Einige Hinweise zur GRML Konfiguration findet man hier :<br />
http://grml.org/zsh/grmlzshrc.html<br />
http://grml.org/zsh/grml-zsh-refcard.pdf<br />
<br />
==History==<br />
Die History der ZSH ist sehr mächtig. Vielleicht kennst du das Problem,<br />
dass du mehrere Shells offen hast, und du dann den Befehl $foo1, den du<br />
in der ersten Konsole eingegeben hast, auch in die zweiten Shell haben willst.<br />
Die ZSH liest die History immer wieder neu ein, d.h du musst nur einmal<br />
Enter drücken und die History von der ersten Konsole ist auch auf der zweiten<br />
verfügbar.<br />
Es kann auch eine History von nur einem einzelnen Befehl aufgerufen werden.<br />
Nach Eingabe des Befehles reicht ein Drücken der PfeilAuf oder Ab Taste aus.<br />
<br />
<br />
==Globbing==<br />
Jeder verwendet es, aber nicht jeder ist sich dessen bewusst:<br />
Wenn man z.B "ls *txt" ausführt, hat man Globbing verwendet. <br />
Globbing von der Zsh ist aber noch sehr viel mächtiger:<br />
H-Glob gibt Auskunft über die verschiedenen Möglichkeiten:<br />
<br />
/ directories<br />
. plain files<br />
@ symbolic links<br />
= sockets<br />
p named pipes (FIFOs)<br />
* executable plain files (0100)<br />
% device files (character or block special)<br />
%b block special files<br />
%c character special files<br />
r owner-readable files (0400)<br />
w owner-writable files (0200)<br />
x owner-executable files (0100)<br />
A group-readable files (0040)<br />
I group-writable files (0020)<br />
E group-executable files (0010)<br />
R world-readable files (0004)<br />
W world-writable files (0002)<br />
X world-executable files (0001)<br />
s setuid files (04000)<br />
S setgid files (02000)<br />
t files with the sticky bit (01000)<br />
<br />
print *(m-1) # Files modified up to a day ago<br />
print *(a1) # Files accessed a day ago<br />
print *(@) # Just symlinks<br />
print *(Lk+50) # Files bigger than 50 kilobytes<br />
print *(Lk-50) # Files smaller than 50 kilobytes<br />
print **/*.c # All *.c files recursively starting in $PWD<br />
print **/*.c~file.c # Same as above, but excluding 'file.c'<br />
print (foo|bar).* # Files starting with 'foo' or 'bar'<br />
print *~*.* # All Files that do not contain a dot<br />
chmod 644 *(.^x) # make all plain non-executable files publically readable<br />
print -l *(.c|.h) # Lists *.c and *.h<br />
print **/*(g:users:) # Recursively match all files that are owned by group 'users'<br />
echo /proc/*/cwd(:h:t:s/self//) # Analogous to >ps ax | awk '{print }'<<br />
<br />
==Hashes==<br />
Eine weitere Funktion sind die Hashes.<br />
Mit ihnen kann man sich viel lästige Tipparbeit ersparen.<br />
Ein neuer Hash wird folgendermaßen definiert:<br />
<br />
''hash -d foo=/path/to/directory''.<br />
<br />
Anstatt ''cd /path/to/directory'' muss man jetzt nur noch ''cd ~foo'' ausführen.<br />
Für Superfaule : ein ~foo reicht bei gehashten Verzeichnissen sogar auch zum<br />
Wechseln des Verzeichnisses aus.<br />
<br />
==GRML-Tipp: Batterie==<br />
Die GRML Konfiguration bietet auch die Anzeige des Ladestandes von der <br />
Batterie an.<br />
Durch Einfügen von BATTERY=1 in die .zshrc.local kann dieses Feature aktiviert werden.<br />
<br />
==Weblinks==<br />
* [http://de.wikipedia.org/wiki/Zsh Wikipedia] {{sprache|de}}<br />
* [http://grml.org/ Grml Live-CD] {{sprache|en}}<br />
* [http://grml.org/zsh/zsh-lovers.html ZSH-Lovers: Tips, Tricks und Beispiele] {{sprache|en}}<br />
* http://strcat.de/zsh/ {{sprache|en}}<br />
<br />
<br />
[[Kategorie:Konsole]] <br />
[[Kategorie:Tipps und Tricks]]</div>Feurihttps://wiki.archlinux.de/index.php?title=GNOME&diff=11967GNOME2011-08-30T17:45:02Z<p>Feuri: gnome-tweak-tool hinzugefügt</p>
<hr />
<div>GNOME ist das GNOME Desktop Environment, also eine Desktop Umgebung für Unix- und unixoide Systeme. Veröffentlicht unter GPL und LGPL.<br />
[[Bild:Gnome.png|thumb|300px|Der Standard GNOME Desktop]]<br />
<br />
==Installation ==<br />
Die grundlegenden Komponenten von GNOME werden mit<br />
# pacman -S gnome<br />
installiert.<br />
<br />
Die aktuelle Version des X.Org-Servers und des GNOME-Desktops benötigt für eine ordnungsgemäße Funktion nur noch einen Daemon, '''dbus'''. Dieser sollte an möglichst früher Stelle in der [[rc.conf]] eingetragen werden.<br />
DAEMONS=(syslog-ng '''dbus''' ...)<br />
<br />
Um den Rest von GNOME zu installieren, kann man einfach die Gruppe gnome-extra installieren (wobei einzelne Pakete auch abgewählt werden können).<br />
# pacman -S gnome-extra<br />
<br />
Wer noch die GNOME-Systemverwaltungsprogramme benötigt, sollte das Paket gnome-system-tools installieren. Es ermöglicht z.B. die Konfiguration von Benutzern & Gruppen oder auch der Zeit.<br />
# pacman -S gnome-system-tools<br />
<br />
Um weitere Einstellungen zu konfigurieren benötigt man das Paket gnome-tweak-tool.<br />
# pacman -S gnome-tweak-tool<br />
<br />
Um das Aussehen anzupassen benötigt man außerdem noch das Paket gnome-shell-extension-user-theme.<br />
# pacman -S gnome-shell-extension-user-theme<br />
<br />
==GNOME starten ==<br />
Am einfachsten lässt sich Gnome mittels [[Login-Manager]] starten.<br />
<br />
Alternativ kann man GNOME per startx ausführen und muss der Datei ''~/.xinitrc'' <br />
exec ck-launch-session gnome-session<br />
hinzufügen. <br />
<br />
==Deinstallation ==<br />
Um GNOME deinstallieren zu können muss man GNOME als Gruppe entfernen. Das kann man einfach mit<br />
pacman -Rscn gnome<br />
erreichen.<br />
<br />
== Tipps und Tricks ==<br />
=== Hintergrundbild: Gesperrter Bildschirm ===<br />
Wird der Bildschirm (z.B. durch den Screensaver) gesperrt, hat der "gesperrte Bildschirm" seinen eigenen Hintergrund und greift auf den Standard-Hintergrund zurück (jeder kennt das grüne Blatt):<br />
<br />
/usr/share/pixmaps/backgrounds/gnome/background-default.jpg<br />
<br />
Die (momentan) einzig bekannte Lösung ist dieses Hintergrundbild zu ersetzen:<br />
<br />
sudo cp NeuesBild.jpg /usr/share/pixmaps/backgrounds/gnome/background-default.jpg<br />
chown 644 /usr/share/pixmaps/backgrounds/gnome/background-default.jpg<br />
<br />
Alternativ kann man auch einen [[ln#Softlinks|Softlink]] setzen. Dies setzt voraus, dass man sein Wallpaper immer unter dem selben Dateinamen speichert. Beispielsweise „/home/username/.wallpaper“.<br />
<br />
cd /usr/share/pixmaps/backgrounds/gnome/<br />
su<br />
mv background-default.jpg background-default.jpg.backup<br />
ln -s /home/username/.wallpaper background-default.jpg<br />
exit<br />
<br />
Somit reicht es, einfach die Datei „/home/username/.wallpaper“ zu ersetzen, wenn man sein Hintergrundbild ändern will, und durch den Link hat man auch bei einem gesperrten Bildschirm automatisch das jeweils aktuelle Hintergrundbild.<br />
<br />
== Weblinks ==<br />
*http://www.gnome.org {{sprache|en}}<br />
*http://www.gnome-look.org {{sprache|en}}<br />
<br />
[[Kategorie:GTK]]<br />
[[Kategorie:Desktopumgebung]]<br />
[[en:GNOME]]</div>Feuri