Kein seq in bashbasierte Scripte von FreeBSD

Da ich ja so Gut nur wie auf der Shell arbeite ist für mich mouseless url yanking sehr wichtig. Leider funktionierte das Script nicht unter FreeBSD und die Fehlersuche wurde mir nicht wirklich einfach. Aber nach ein wenig Nachdenken, Lesen, Nachdenken kam ich auf die Idee woran es liegt. Es gibt seq in Bash-Scripte bei FreeBSD nicht. Der Ersatz dafür heisst jot.
Somit ergibt sich das:

for i in `seq 1 ${#order[@]}`;
do
  ${order[$i-1]} $1 && exit
done

in

for i in `jot 1 ${#order[@]}`;
do
  ${order[$i-1]} $1 && exit
done

umgeschrieben werden muss, dann steht dem URL-markieren nichts mehr im Wege.
jot-Manpage

RSS in der Shell mit xmlstarlet bereit zur Weiterverarbeitung

Manchmal kann es sehr einfach sein, vor allem wenn man nur mal eine Ausgabe pipen möchte, um sie in seiner statusbar zu nutzen.
Man braucht nicht wirklich einen Feedreader um dessen Ausgabe in einem Script weiterzuverarbeiten, das ist mit Kanonen auf Spatzen schiessen. Abhilfe schafft das Paket xmlstarlet in der Version 1.0.1-2 :

XMLStarlet ist ein Satz von Werkzeugen (tools) für die Kommandozeile. Mit ihnen können XML-Dokumente durch einen einfachen Satz von Shell-Befehlen transformiert, abgefragt, validiert und bearbeitet werden. Das entspricht ungefähr der Bearbeitung von Textdateien mit den UNIX-Befehlen grep, sed, awk, diff, patch, join und so weiter.Dieser Satz von Befehlszeilenwerkzeugen eignet sich für diejenigen, die mit vielen XML-Dokumenten auf der Kommandozeile arbeiten ebenso wie die automatisierte Verarbeitung von XML-Dokumenten durch Shell-Skripte.
Paket: xmlstarlet (1.0.1-2)

Das ganze wird mit einem simplen seraphyn@takeshi:~# aptitude install xmlstarlet installiert und steht dann zum Abruf bereit.
Nun ein kleines Beispiel:

wget http://got-tty.org/feed -O - 2>/dev/null | xmlstarlet sel -t -m "/rss/channel/item" -n -v "pubDate" -n -v "title" -n -v "link" -n -n

Natürlich kann man sich mehr anzeigen lassen, somit Feed-Inhalt beachten. Nach einem Blick in man und der Dokumentation, welche die gleiche wie man ist?!?!?! sind uns keine Grenzen gesetzt.
Happy Hackin‘

Linktips: 200409 Zu unserem kleinen Schutz und der Entspannung

How to compile FiSH encryption for irssi on Debian
Und manchmal kann es nett sein seine Kommunikation zu schützen, vor allem wenn über die Unfähigkeit von Politik gesprochen wird…, oder mache ich mich auch gleich wieder verdächtig?
(Seraphyn sucht seinen Klebevollbart)

Put irssi in a chroot jail
This short howto will walk you though the steps for setting up a jail that only has a few commands in it and will help create a much safer IRC enviroment for you.
FiSH alleine reicht ja nicht…

Howto Delete Files Permanently and Securely in Linux
We all know that when you simply delete a file, it’s possible to recover it later. Sometimes this is useful, if you accidentally delete something important; but usually this is a problem, and you really want that file gone forever. This howto will explain how to delete a file in linux securely and permanently, so it can never be recovered.
Ist auch im Debian-Repository

Hacking Tools & Techniques and How to Protect Your Network from Them
Hackers today use a wide variety of tools and techniques to gain entry into networks across the globe, stealing and destroying confidential data, as well as defacing public websites, writing malicious code, and bringing systems and networks to their knees. These attacks can sometimes cost companies thousands of dollars in downtime, resources, and manpower, not to mention the possibility of having secret data stolen and leaked. The purpose of this paper is to discuss some of the most common tools and techniques hackers use today, and how you and your company can protect your infrastructure from these attacks, as well as broaden your knowledge on hacking as a whole.

The ASCII Ribbon Campaign
Nicht nur ComicSans und IE6 möchte ich aus meinem Leben haben, auch diese unerträglichen abgrundtief von mir gehassten HTML-Mails.

Wiring and Cabling
published by the direction of the chief of the Bureau of Naval Weapons, 1 December, 1962.
Was der alten Dame Ihr Häkeln zur Entspannung ist, ist dem Admin sein wiring and cabling.

Webseitenscreenshots von der Shell

Ich nutze keinen Firefox und habe auch nicht mehr das Bedürfniss ihn zu nutzen. In dem vorangegangenen Eintrag wollte ich unbedingt ein Screenshot eines Teiles der ComiConArt-Homepage machen und war etwas angenervt das ich mit scrot und gimp das ganze bearbeiten muss. Warum? Somit habe ich mich ein wenig durch das Netz gesucht um am Schluß auf zwei Dinge zu stoßen.

Weiterlesen

Wetter in meiner Shell mit CurseTheWeather

Liegt es nun an ncurses, oder sollen wir doch das Wetter verfluchen?
Im Moment ist es Gut, als nehme ich ncurses;)
Da sich der Großteil meiner Arbeit in der Shell befindet habe ich für mich eine schnelle und kurze Wetteranzeige/voraussage aufgetan, welche genau jenes macht, was ich erwarte.
Das Wetter anzeigen.

CurseTheWeather

Ich habe mir CurseTheWeather heruntergeladen und in einem eigenen Ordner in meinem ~/bin/-Verzeichnis entpackt. In unseren Gefilden holen wir uns den Regioncode unter http://de.weather.com/, für mich ist es Stuttgart und der Code somit GMXX0128. Da ich ja Faul bin habe ich mir eine kleine ausführbare Datei Namens wetter in das Verzeichnis ~/bin/ gesetzt.
Inhalt:

/home/seraphyn/bin/CurseTheWeather-0.3/ctw --refresh=10 GMXX0128

CurseTheWeather startet mit einer Erneuerung der Daten von 10 Minuten ( nur zu einer Veranschaulichung) und meinem Stuttgarter Code. Wer nicht das metrische System nutzen will startet CurseTheWeather mit –nometric. Für das nutzen von anderen Farben/ASCII-Art kann die Datei ctw in den Zeilen 125-128 (Farben) und 18-92 (ASCII-Art) bearbeitet werden.

Calcurse der persönliche Organizer in der Shell

Immer öfter finde ich nun kleine nette Shellprogramme, welche meine grafische Lösungen ablösen. Somit habe ich unter E17 nun meine yeahconsole am laufen, welche mit F1 aufgerufen wird. Darin läuft eine screen-Session, welche mir Programme bei dem Aufruf von screen (durch die Konfiguration der ~/.screenrc) automatisch startet. Neu hinzugekommen ist nach irssi und centericq nun calcurse. Bei calcurse handelt es sich um einen einfacher textbasierten Organizer mit Kalender- und Erinnerungsfunktionen. Als Oberfläche kommt, wie der Name schon Vermuten lässt, ncurses zum Zuge, somit eine der Abhängigkeiten, die andere ist gettext. Natürlich gibt es den Shellkalender auch in den normalen Debian Etch-Repositories. In dem Ordner ~/.calcurse/ werden die Dateien apts, conf und todo nach dem ersten Start angelegt. Die Datei conf enthält die Konfiguration, die Datei apts die Kalenderdaten, sowie die Datei todo die Aufgabenliste. Man kann natürlich auch calcurse in Scripte einbinden und die return-Werte weitergeben, mehr Info gibt dazu die Manpage, oder auch das Onlinehandbuch. Die Konfiguration lässt sich Fix mit der Taste c aufrufen und bietet schon vorgefertigte Themes an. Kann man nehmen, muss man nicht, da auch schwarz/weiss angeboten wird, oder man sich selber Themes erstellen kann. Die Notifybar ist wie bei irssi modfiziertbar, die Möglichkeit sich auch per Mail über wichtige Ereignisse informieren lassen ist gegeben. Layout ist nach eigenen Bedürfnissen anpassbar und somit ist da Programm genau der Kandidat, welchen ich gesucht hatte. Wer also Kommandozeilenaffinitiv ist, sollte zugreifen. Wobei ein Manko scheint es zu geben, dies sind wiederkehrende Termine, man scheint sie nicht anlegen zu können.. sprich Geburtstage etc, naja, mal ein kleines Script dafür schreiben. Was Alles bis Dato noch fehlt ist dem ToDo auf der Projekthomepage zu entnehmen.

Installierte Pakete an ein anderes System übertragen

Eben traf mich die Frage eines Backups im Channel auf, da gab ich den Tipp, doch einfach Fix /etc zu sichern und die installierten Pakete in einer Liste zu sichern um danach das System an anderer Stelle zu übertragen. Nicht vergessen die Config-Dateien so zurückzuspielen, dass Sie auch zu dem System passen, sonst kann es ein böses erwachen geben, als bsp /etc/modules /etc/hostname usw usf

seraphyn@takeshi~ >$ dpkg --get-selections "*" > instdebs
root@Tsuyoshi~> dpkg --set-selections < instdebs
root@Tsuyoshi~>  apt-get dselect-upgrade 

Kein Buch mit sieben Siegeln:
Debiananwenderhandbuch – dselect
Debiananwenderhandbuch – dpkg –get-selections
Debiananwenderhandbuch – dpkg –set-selections

cli-apps.org

Lange darauf gewartet, nun vorhanden: cli-apps.org. Wie man auf dem Screenshot sieht gibt es bis Dato nur eine Anwendung, aber ich bin sehr guter Dinge und hoffe, dass viele Maintainer sich mit Ihren Programmen dort verewigen und diese Seite als Werbe- und erweiterte Userkommunikationsplattform nutzen. Man mag nun meinen, dass eine Maillingliste, oder ein Forum ausreicht, aber ich muss zugeben, dass ich auch erst sehr viele Anwendungen gefunden habe, indem sie auf dem -apps.org-Plattformen postuliert wurden. Im Grossen und auch im Ganzen, meiner Meinung nach, ein toller Schritt in die richtige Richtung, denn es gibt viele Kommandozeileprogramme, welche sich lohnen und an die Masse gebracht werden sollten, denn GNU/Linux findet für mich zumindest zu 73% auf der Shell statt und bietet somit für mich sehr starke Speicher- und CPU-Ersparniss mit den Programmen “ohne GUI”. Warum in Anführungszeichen ? Ja, warum denn nicht, ich halte ncurses schon für eine GUI, eine Falschaussage, da es eine TUI (Text User Interface) ist, welche eine grafische Umgebung im eigentlichen Sinne darstellt. Gut, ich weiss für Einige ein sehr streitbarer Punkt, nur für mich eine Sache der Einstellungen und der Sichtweise. Lange Rede, kurzer Sinn, Konsoleprogramme sind wunderbar und haben nun einen Platz, welcher sie propagandiert…

Ein Leben ohne X

Auf dem Blog „Terminally Incoherent“ ist ein wirklich netter Artikel zu lesen, welcher mal aufzeigt, dass das Leben auch ohne einen X-Server stattfinden kann. Der Author gibt einige Beispiele wie man seine täglich genutzten Programme auch mit Shellderivaten ersetzen kann. Manche wie irssi, elinks, vi und der mc dürften ja zu genüge bekannt sein, gehe ich mal von aus. Vielleicht findet sich Hier ja noch ein Tipp für den einen oder auch anderen.

Für mich war es TWIN (Textmode Window Environment), ein “Windowmanager” für die Shell auf ncruses-Basis.