Escolar Documentos
Profissional Documentos
Cultura Documentos
08/2008
Amarok
Vorwort
Wisst ihr was eine Dekade, ein gen, meist Jahren, ein Polygon mit
Dekagon, den Dezember und nun 10 Seiten wird als Dekagon bezeich-
auch Yalm miteinander verbindet? net, der Dezember war ursprünglich
der 10. Monat im römischen Kalen-
Bevor wir uns der Klärung dieser
der und dies ist die zehnte Ausgabe
Frage zuwenden, möchten wir euch
von Yalm. Dahingehend ist es kaum
stolz diese Ausgabe von Yalm prä-
zu glauben, aber die Lösung findet
sentieren. Neben unzähligen Artikeln
sich in der Zahl 10!
haben wir wieder einmal einige Sei- Inhaltsverzeichnis
ten der Schilderung interner Vorgän- Abschließend wünschen wir euch
ge und Fortschritte gewidmet. somit viel Spaß beim Lesen dieser Yalm - Vorwort...........................................................................................2
Ausgabe und hoffen, dass wir euch Vorwort...................................................................................................2
Da allerdings eben dieser Bericht
ein wenig informieren, euer Interesse Yalm - Rückblick........................................................................................3
verhindert, uns an dieser Stelle zur
für einige Programme wecken und Rückblick................................................................................................3
Mitarbeiterwerbung oder sonstigen
euch unter Umständen auch für die Yalm - Magazin...........................................................................................5
nennenswerten Entwicklungen zu äu-
Zahl 10 begeistern konnten. Amarok...................................................................................................5
ßern, tasten wir uns lieber einmal an
die Lösung der oben gestellten Frage Interview mit Ian Monroe.......................................................................10
Stefan Zaun OpenOffice Base - Teil 1.......................................................................11
unter Zuhilfenahme einiger Hinweise sciron@yalmagazine.org
heran: GnuPG – Teil II.....................................................................................15
Yalm - Tipps und Tricks..........................................................................19
Wie viele biblische Plagen schick-
Tipps und Tricks für die Shell (3)...........................................................19
te Gott den Ägyptern, wie viele Him-
Sprechblasen erstellen mit GIMP..........................................................21
melsstämme gibt es im chinesischen
Kalender und welches Wort erhaltet Yalm - Bunte Seite...................................................................................23
ihr, wenn ihr den letzten Buchstaben Bunte Seite...........................................................................................23
von der Bezeichnung einer traditio- Yalm - Story..............................................................................................25
nellen Steuer entfernt? Gekaufte Zeit .......................................................................................25
Um die eventuell entstandene Yalm - Intern.............................................................................................28
Verwirrung einmal aufzulösen: Die Intern....................................................................................................28
traditionelle Steuer ist der »Zehnt«, Yalm - Schlusswort.................................................................................29
bei einer Dekade handelt es sich um
eine Zusammenstellung von 10 Din-
Yalm - Rückblick 3
Rückblick
Auch im vergangen Monat gab es bedeutende Ankündigungen und
anderer nennenswerte Geschehnisse, die wir euch nicht vorenthalten
und hier präsentieren wollen.
Anlegen der Tabellen
dass man bei der Verwendung der Beim Feld Ausgabe_ID ist es wichtig,
Felder in Formularen und Abfragen unten bei den Feldeigenschaften die
auf den ersten Blick erkennt, zu wel- Option Auto-Wert auf Ja zu stellen,
cher Tabelle das Feld gehört. damit der Feldinhalt (eine fortlaufen-
de Nummer) von Base automatisch
Tabellen erstellen erzeugt wird. Außerdem ist es sehr
zu empfehlen, zu jedem Feld eine
Mit dem Entwurf ist nun klar, wie
Beschreibung anzugeben, sonst
die Datenstruktur aussehen soll. In
weiß man nach drei Wochen nicht
Base markieren wir das Daten-
mehr, welche Bedeutung das Feld
bankobjekt Tabellen und klicken in
hat.
der Aufgabenliste auf Tabelle in der
Entwurfsansicht erstellen. Daraufhin Jeder Feldtyp hat unterschiedliche
öffnet sich das Fenster für den Ta- Eigenschaften, die entsprechend den
bellenentwurf. In die Liste werden Bedürfnissen der Datenbankanwen-
Namen, Feldtyp und Beschreibung dung eingestellt werden können. In
für die Tabelle Ausgabe eingetragen. diesem Artikel werden wir jedoch
Fremdschlüssel
Yalm - Magazin 14
Primärschlüssel von Ausgabe, Kardinalität der Relation: 1 bedeutet,
nämlich Ausgabe_ID. Aus dass es einen zugehörigen Daten-
dem Hauptfenster von Base satz gibt (z. B. ein Artikel gehört zu
kann mit einem Rechtsklick einer Ausgabe); n bedeutet, dass es
auf den Tabellennamen und mehrere zugehörige Datensätze gibt
der Auswahl Bearbeiten aus (z. B. eine Ausgabe hat mehrere Arti-
dem Kontextmenü die Tabelle kel).
zur Veränderung der Struktur
Ein Doppelklick auf eine Linie öff-
geöffnet werden.
net das Relationenfenster. Dort sind
Da der Artikel auch einen weitergehende Einstellungen für die
Status hat und somit auf die gewählte Relation möglich. Die Up-
Tabelle Status referenziert, date-Optionen sind für uns weniger Daten eingeben
wird auch für diese Beziehung interessant, da die Primärschlüssel
Beziehungen zwischen Tabellen ein Fremdschlüssel benötigt. alle automatisch erzeugt werden und Daten gefüllt. Ein Doppelklick auf den
Die Abbildung zeigt die beiden deshalb keine Veränderung der Tabellennamen im Hauptfenster
Fremdschlüssel Ausgabe_ID und Schlüsselwerte stattfindet. (oder Rechtsklick - Öffnen) öffnet die
Bevor die Beziehungen erzeugt Status_ID. Bitte nicht vergessen: Die
Die Löschoptionen sind da schon Tabelle im Eingabemodus. Zuerst
werden, überlegen wir noch, wie die- Feldtypen müssen bei Primär- und
spannender. Was passiert z. B. wenn wird die Tabelle Status mit Inhalt ge-
se Beziehungen überhaupt funktio- Fremdschlüssel gleich sein; die Feld-
eine Ausgabe gelöscht wird? Über füllt. Die Abbildung zeigt, wie mögli-
nieren. Wir wissen, dass ein Artikel namen müssen nicht unbedingt die
die Löschoptionen ist es möglich, alle che Werte aussehen könnten, die
entweder zu keiner oder zu genau ei- selben sein.
zur gelöschten Ausgabe gehörigen das Leben eines Artikels widerspie-
ner Ausgabe gehört. Deshalb benö-
Als nächstes werden die Bezie- Artikel ebenfalls löschen zu lassen geln. Bei der Eingabe sieht man die
tigt die Tabelle Artikel ein Feld, wel-
hungen angelegt. Aus dem Base (kaskadierendes Löschen). Bei be- Wirkung der automatischen Numme-
ches auf die zugehörige Ausgabe re-
Hauptfenster kann über das Menü stimmten Sachverhalten macht das rierung des Primärschlüssels.
ferenziert. Falls der Artikel noch zu
keiner Ausgabe gehört, bleibt dieses Extras - Beziehungen das zugehöri- durchaus Sinn und fördert die Kon-
Ralf Hersel
Feld leer. Die Ausgaben sind durch ge Fenster geöffnet werden. Im dar- sistenz der Daten. In unserem Bei- rhersel@yalmagazine.org
ihren Primärschlüssel eindeutig iden- auf folgenden Dialog fügen wir alle spiel wollen wir die Artikel nicht lö-
tifizierbar (Feld: Ausgabe_ID). Um drei Tabellen hinzu. Mit der Maus schen, falls eine Ausgabe gelöscht Informationen
diesen Sachverhalt abzubilden, muss kann nun zwischen den Primär- wird; wir lassen die Einstellungen un- [1] HSQL:
bei der Tabelle Artikel ein Fremd- schlüsseln und den Fremdschlüsseln verändert. http://de.wikipedia.org/wiki/Hsql
schlüsselfeld hinzugefügt werden, eine Relation gezogen werden, die [2] Relationale Datenbank:
das auf die Ausgabe zeigt. Diesem im Fenster als Linie zwischen den Daten eingeben http://de.wikipedia.org/wiki/
Feldern dargestellt wird. Die Linien- Relationale_Datenbank
Feld geben wir denselben Namen Zum Schluss des ersten Work-
und denselben Datentyp wie der enden geben Aufschluss über die
shopteils werden die Tabellen mit
Yalm - Magazin 15
GnuPG – Teil II
Im ersten Teil dieser Artikelreihe haben wir euch die grundlegende
Handhabung von GnuPG erläutert. Nachdem die ersten Schritte bewäl-
tigt wurden, möchten wir euch nun die eigentliche Benutzung sowie ei-
nige weiterführende Tipps darlegen.
Stefan Zaun
sciron@yalmagazine.org
Tipps und Tricks für die Shell (3) ner Datei noch einmal nach, ob diese
Aktion wirklich durchgeführt werden
und kopiert es in die Zwischenabla-
ge. Strg+Y fügt das Ausgeschnittene
soll. Bei diesen Distributionen muss wieder ein. Strg+W schneidet, unab-
Auch in dieser Ausgabe gibt es wieder Nützliches für die Kommandozei- der Parameter -f (force) angefügt hängig wo sich der Cursor befindet,
le. Diesmal geht es um Abkürzungen mit dem Befehl Alias, kürzere IF- werden, um die Abfrage zu unter- die komplette Zeile aus und speichert
Abfragen und Copy & Paste im Terminal. Außerdem gibt es die Auflö- drücken. Alternativ kann auch einfach diese in der Zwischenablage. Es
sung zum letzten Rätsel und natürlich ein neues. der Alias entfernt werden. kann nur ein Eintrag gespeichert wer-
den. Ein erneutes Ausschneiden
Die Definition eines Alias ist nur
Alias Namen ausgeführt werden. Um nun überschreibt den alten Inhalt.
für die aktuelle Sitzung gültig. Um
z. B. ein Alias für das Löschen von den Befehl dauerhaft zu speichern,
Oftmals müssen komplexe Befeh-
Ordnern anzulegen kann folgender Einfaches IF
le mehrfach genutzt werden. Oder muss ein Eintrag in die .bashrc er-
Befehl genutzt werden: folgen. Diese Datei befindet sich im In fast jedem Shellscript werden
ein bestimmtes Programm wird häu-
fig mit den gleichen Parametern auf- alias rd="rm -r" Heimatverzeichnis des Benutzers. Im IF-Abfragen benötigt.
gerufen z. B. ls –la. unteren Teil sind schon einige Aliase if true; then echo "hallo"; fi
Jetzt kann ein Verzeichnis einfach
vorkonfiguriert, welche allerdings
Nun besteht natürlich die Möglich- durch die Eingabe von Nun - das Programm true ist in
noch auskommentiert sind. Hier kann
keit, diese Anweisungen in die Zwi- rd Directory diesem Fall eher ein Platzhalter. Es
nun der neue Alias eingefügt werden
schenablage zu kopieren und dann macht nichts außer immer einen
vernichtet werden. Alias erlaubt und steht dann nach jedem Login zur
bei Bedarf einzufügen. Aber wirklich «wahren» Wert zurückzuliefern. Oft
auch das Überschreiben der alten Verfügung.
praktisch ist diese Lösung nicht, zu- ist in Beispielen folgende Verwen-
Befehle. Distributionen wie CentOS
mal sie bei mehr als einem Komman- dung zu sehen:
nutzen diesen Mechanismus, um Terminal schließen
do unhandlich wird. Zum Glück bietet
Sicherheitsabfragen einzubauen. So if [[ $VAR -eq 1 ]]; then →
die Bash mit dem eingebauten Befehl Anstatt jedes Mal mit exit ein Ter-
echo "hallo"; fi
ist unter CentOS und Redhat Linux minal zu verlassen, kann auch ein-
alias hier eine Alternative. Wie der
der Befehl rm ein Alias auf rm -i. Die fach die Tastenkombination Strg+D Die eckige Klammer [ ist nichts
Name schon vermuten lässt, können
Option -i fragt vor jedem Löschen ei- benutzt werden. anderes als das Programm test.
damit Befehle unter einem anderen
man [
Copy & Paste
gibt die Manpage für test aus. Es
Neben den nativen Methoden der ist unbedingt darauf zu achten, dass
Desktopumgebungen zur Verwaltung sich zwischen den Klammern und der
der Zwischenablage kann innerhalb Abfrage im Inneren ein Leerzeichen
einer Kommandozeile auch auf die befindet.
Tastenkombinationen Strg+K und
Allerdings gibt es eine wesentlich
Strg+Y zurückgegriffen werden.
elegantere und kürzere Methode um
Die Bash integriert Alias-Befehle nahtlos in die Befehlsvervollständigung Strg+K löscht alles vor dem Cursor
Yalm - Tipps und Tricks 20
den Rückgabewert von Programmen nen, dass || und && keine Befehle Obwohl das Verzeichnis existiert, " ist" && (blub) && echo -n →
"doof" || echo " toll"
auszuwerten: Sogenannte Short Cir- aneinander binden. Sie werten ein- wird die falsche Ausgabe erzeugt, da
cuit-Tests. fach nur die Variable $? aus, die den der 2. Befehl fehlschlägt (hier durch # yalm ist toll
if [[ -d /home/max/ ]]; then → Rückgabewert des zuletzt ausgeführ- exit 1 simuliert). Dieses Verhalten Auf den ersten Blick sieht es so
echo "Das ist ein → ten Kommandos enthält. sollte immer bedacht werden. aus als wäre Yalm doof. Doch warum
Verzeichnis."; fi
Wobei eine 0 als Rückgabewert gibt die Shell eine andere Ausgabe
kann auch so geschrieben wer- Rätsel aus?
soviel wie «alles ok» bedeutet und
den: ein Wert ungleich 0 ein unerwartetes Zuerst möchten wir uns für die Zu- Antworten bitte an redaktion
test -d /home/max/ && echo → Verhalten anzeigt. schriften zum letzten Rätsel bedan- @yalmagazine.org. Die ersten drei
"Das ist ein Verzeichnis" [root@ubuntu ~]# test -d → ken. Leider waren nicht alle Antwor- richtigen Einsender (und natürlich
/home/max/ ten korrekt, doch zwei unserer Leser auch Einsenderinnen) werden na-
Dabei gibt es zwei unterschiedli-
konnten das Problem lösen (nach mentlich im Magazin genannt. Wer
che Möglichkeiten Befehle zu ver- [root@ubuntu ~]# echo $?
Einsendedatum): lieber anonym teilnehmen möchte,
knüpfen. Entweder mit && oder mit ||. 0
Die Verknüpfung mit UND (&&) führt 1. Carsten Werner kann dies in der Email kurz vermer-
[root@ubuntu ~]# test -d → ken. Wir freuen uns auf eure Antwor-
den zweiten Befehl nur aus, wenn 2. Dirk
/home/gibtsnicht
der erste erfolgreich war, die Ver- ten.
knüpfung mit ODER (||) nur wenn der [root@ubuntu ~]# echo $? Hier noch einmal das vergangene
erste Befehl fehlgeschlagen ist. So 1 Rätsel: Maximilian Schnur
max@yalmagazine.org
lässt sich auch ganz einfach der Be- [root@ubuntu ~]# echo $? $ let question=$((zahl=5); →
fehl um eine zweite Ausgabe erwei- echo "1$zahl")-5
0
tern. $ echo $question
test -d /home/max/ && echo → Schon beim nächsten Anzeigen
-4
"Das ist ein Verzeichnis" || → der Variable ist der Inhalt 0. Denn
echo "Kein Verzeichnis" das vorangegangene echo $? konnte Antwort: Die Zuweisung von
korrekt ausgeführt werden. zahl=5 wird innerhalb einer Subshell
Allerdings sollte bei längeren Ab-
ausgeführt, kommt also niemals in
fragen von dieser Variante abgese- Würde nun die Anweisung nach
der aufrufenden Shell an. So ist die
hen werden, da die Übersicht doch && einen Fehler enthalten wie z. B.
Variable $zahl leer und echo gibt nur
relativ schnell verloren geht, wie in nachfolgendem Befehl simuliert
1 aus. Und 1-5 ergibt logischerweise
auch das heutige Rätsel zeigen wird. wird, erscheint eine unerwartete Aus-
-4.
Bei oben gezeigtem Befehl sieht gabe.
Hier nun das neue Rätsel dieser
es auf den ersten Blick so aus, als [root@ubuntu ~]# test -d →
/home/max/ && (exit 1) || → Ausgabe:
hinge die Ausgabe vom Rückgabe-
echo "Kein Verzeichnis" # echo -n "yalm" && alias →
wert des test-Befehls ab. Dies ist nur
bedingt der Fall. Man sollte erwäh- Kein Verzeichnis blub="exit 1" && echo -n →
Yalm - Tipps und Tricks 21
Man startet GIMP über Anwen- welches man mit einer Sprechblase
dungen - Grafik - GIMP Image Editor versehen möchte. In diesem Fall be-
oder wahlweise über das Terminal dienen wir uns eines Kaktus (Datei -
und den Befehl öffnen - Pfad zum Bild).
gimp Da der Kaktus noch auf der Seite
Nachdem GIMP erfolgreich ge- liegt, muss das Bild zunächst um 90°
startet wurde, öffnet man das Bild, gedreht werden.