Archiv der Kategorie: linux

Linux – Ubuntu

Viele OpenOffice Dokumente nach Begriff durchsuchen

Man gehe davon aus, man hat einen Ordner voller Textdokumente im Open Document Format (.odf) und möchte diese nach einem (oder mehreren) Suchbegriffen durchsuchen. Nun kann man diese jeweils einzeln öffnen und die Suchfunktion von OpenOffice (o.ä.) bemühen, oder sich dort ein kleines Makro stricken.

Oder, man macht sich die Offenheit des Formates zu Nutze und durchsucht die Dokumente mit dem in dem Shell-Skript am Ende des Artikels.

Als kleine Hintergrundinformation sei gesagt, das ein Dokument im Open Document Format nichts anderes ist als eine (oder mehrere) XML-Datei(en), die in ein zip-Archiv verpackt sind. Das Skript macht nichts anderes als Dateien mit der Endung .odt mit Hilfe von 'find' zu suchen, diese mit 'unzip' zu entpacken und mit unserem guten Freund 'grep' zu durchsuchen.

Doch genug der Theorie, auf zum Wesentlichen, dem Skript:

  1. #!/bin/bash
  2.  
  3. if [ $# -ne 2 ]; then
  4. echo "Benutzung: searchodt pfad ausdruck"
  5. exit 1
  6. fi
  7.  
  8. find $1 -name "*.odt" | while read file
  9. do
  10. unzip -ca "$file" content.xml | grep -qli "$2"
  11. if [ $? -eq 0 ]; then
  12. echo "Suchbegriff gefunden in " $file
  13. fi
  14. done

Anleitung:
Man kopiere das obige Skript und füge es in eine Datei Namens 'searchodt' ein. Mache diese ausführbar:

  1. chmod +x searchodt

Anschließend läßt man das Skript auf seine Dokumente los:

  1. ./searchodt /pfad/zu/den/odf-dateien suchbegriff

Für jedes Dokument, in dem der Suchbegriff gefunden wurde erhält man als Ausgabe eine Zeile der folgenden Art:

  1. Suchbegriff gefunden in [dateiname]

Und nun viel Spaß beim Suchen.

PS: Versucht das man mit einem .doc hinzubekommen 😉

Ubuntu 9.04 auf der Linksys NSLU2

Ubuntu LogoDa in den Kommentaren zu dem Beitrag über Transmission auf der NSLU2 häufig (ja, 2 Kommentare sind in diesem Blog als häufig definiert 😉 ) danach gefragt wurde, wie ich Ubuntu auf die kleine Kiste drauf bekommen habe, hier die Antwort:

Nachdem ich bisher immer gut mit Debian auf der Slug gefahren bin, stieß ich neulich erst auf ein Installationsimage für Ubuntu gestoßen.  Also mal "schnell" ausprobiert, so schnell wie es mit dem Schneckchen nun mal geht.

Das Image ist hier zu finden:

http://ports.ubuntu.com/ubuntu-ports/dists/jaunty/main/installer-armel/current/images/ixp4xx/netboot/

Von dort lädt man einfach die Datei 'di-nslu2.bin' herunter und bespielt die NSLU2 damit. Die genaue Vorgehensweise gleicht der Installation von Debian.

Leider wird das Image das erste und auch letzte sein, das für die Slug produziert wurde, da sich die zukünftigen ARM-Ports von Ubuntu auf neuere Versionen der ARM-Architektur beschränken werden, wie hier zu lesen ist.

Die Performance entspricht subjektiv der von Debian auf der Slug, großartige Messungen hab ich allerdings keine angestellt.

Neueste Transmission Version auf der NSLU2 unter Ubuntu 9.04

Transmission LogoLanger Titel, aber sonst weiß ja wieder keiner worums geht 😉

Ich, stolzer Besitzer einer NSLU2 von Linksys, habe auf jener Ubuntu in der aktuellen stabilen Version installiert. Wenn man gerne aktuellere Software, als die in den offiziellen Repos vorhandene, benutzen will, findet man ja mittlerweile recht häufig ein feines PPA, das einem alles relativ einfach auf die Platte schaufelt.

Da aber in meisten PPAs keine Pakete für die ARM-Architektur, die die NSLU2 verwendet, vorhanden sind, fällt diese Möglichkeit weitestgehend flach.

Also, Handarbeit a la configure, make, make install...

Da ich die NSLU2 und den angeschlossenen Speicher dafür nutze meine ISO-Sammlung aktuell zu halten, darf natürlich ein BitTorrent-Client nicht fehlen. Da Web-Interfaces für rTorrent mich irgendwie nicht sonderlich ansprechen (besonders deren Installation), verwende ich Transmission. Die Vorteile liegen auf der Hand:

  • kann ohne X-Abhängigkeiten kompiliert werden
  • hat einen recht schmalen Footprint
  • hat ein nettes WebInterface
  • wird ständig weiterentwickelt

Problem ist, das die aktuelle Version 1.74 der in Ubuntu vorhandenen 1.51 doch deutlich vorraus ist.

Also mal los (alle folgenden Schritte geschehen auf der NSLU2-Konsole über SSH):

Zuerst die benötigten Abhängigkeiten installieren:

  1. sudo apt-get install transmission-daemon build-essential libtool pkg-config libcurl4-openssl-dev intltool

Das wird ein paar Minuten dauern, denn den Spitznamen Slug (Schnecke) hat die kleine Kiste nicht zu unrecht. Warum ich Transmission zuerst über die Paketverwaltung einspiele hat den folgenden Grund: Dadurch werden zum Beispiel das relativ praktische Startskript unter /etc/init.d angelegt mit dem sich der Transmission-Daemon leicht starten und stoppen läßt. Vielleicht nicht die sauberste Methode, aber es spart einiges an Handarbeit.
Stoppen sollte man den Prozeß auch vor den folgenden Schritten:

  1. sudo /etc/init.d/transmission-daemon stop

Anschließend besorge man sich die aktuelle stabile Version von Transmission von der Homepage und entpacke diese in ein geeignetes Verzeichnis:

  1. mkdir build
  2. cd build
  3. tar -cvjf /pfad/zu/transmission-1.74.tar.bz2 # Der Pfad und die Versionsnummer sind entsprechend anzupasse

Wechsle in dieses und führe die altbekannte Kompilationstriade aus:

  1. cd transmission-1.74
  2. ./configure
  3. make
  4. sudo make install

Das führt dazu, dass Transmission ohne X-Abhängigkeiten kompiliert wird, da schlicht kein GTK oder QT auf der NSLU2 installiert sind. Das 'make install' überschreibt anschließend die von der Paketverwaltung installierten alten Binaries und der Daemon kann mit

  1. sudo /etc/init.d/transmission-daemon start

gestartet werden.
Die Konfiguration von Transmission dürft ihr allerdings selbst übernehmen. Dokumente dazu findet ihr in der folgenden Quelle:
Transmission Konfigurationsdatei editieren

Rein subjektiv finde ich die aktuellere Version, gerade auf dem WebInterface, ein wenig flotter, und, wenn ich mich nicht allzusehr täusche, ist die CPU-Auslastung während den Downloads ist auch ein wenig geringer.

Und nun viel Spaß und im Vorraus schonmal ein schönes Wochenende!

Schmales Eisen

Da ich aufgrund des Defektes meines treuen Begleiters im Moment auf einem vergleichsweise schmalen Eisen unterwegs bin (und sich das Mangels monetären Mitteln leider auch so bald nicht ändern wird), namentlich ein IBM Thinkpad X21, bin ich auf der Suche nach möglichst schmalen Programmen. Für Linux versteht sich. Derzeit werkelt hier ein Arch Linux, mit LXDE/Openbox-Aufsatz. So weit so schmal.

Besonders auf der Suche bin ich nach einem schmalen Browser-Ersatz, der mit aber trotzdem einige Annehmlichkeiten a la Firefox nicht verwehrt...

Eben gefunden habe ich kupfer, eine netter äußert resourcenschonender Programmstarter.

Also, falls jemand Empfehlungen hat, in punkto, Programme mit schmalem Fuß, immer rein damit in die Kommentare! Danke!

Nachgereicht: KDE 4.3

KDE4 LogoFast drei Wochen ist es bereits her, dass KDE 4.3 (Codename: "Caizen") in die Öffentlichkeit entlassen wurde um den Desktop weiter zu revolutionieren. Einige Neuerungen haben auch dieses Mal wieder ihren Weg in das neue Release gefunden. Da Listen bekanntermaßen doof sind, hier das offizielle Feature-ShowOff-Video für KDE 4.3:


YouTube Link: KDE 4.3 Features

Mir gefällts ziemlich gut, gerade die kleinen Änderungen, wie das permanente Notification-Icon runden KDE 4 langsam aber sicher ab. Vom neuen Theme war ich ja schon vorher begeistert.

In Ubuntu 9.10 wird KDE 4.3 bereits Standard sein. Um auch in 9.04 KDE auf Version 4.3 zu heben, muss das Kubuntu-Backports-PPA in die Software-Quellen eingebunden werden:
deb http://ppa.launchpad.net/kubuntu-ppa/backports/ubuntu jaunty main
Dann fügt man noch den GPG-Key für das Repository hinzu:
gpg --keyserver keyserver.ubuntu.com --recv 2836CB0A8AC93F7A
gpg --export --armor 2836CB0A8AC93F7A | sudo apt-key add -

Anschließend macht man ein Update, und die aktuelle KDE-Version wird installiert.