Skip to content

sysadmin-utils ...

linux Bei Jochen habe ich das GitHub-Repository sysadmin-util gefunden. Darin enthalten sind einige wirklich interessante Tools.

Neben anderen haben es mir die folgenden besonders angetan:
  • ago: Zeigt in einer menschlich lesbaren Form wie lange die letzte Änderung einer Datei her ist.
  • empty-dir: Gibt zurück, ob ein Verzeichnis leer ist oder nicht.
  • since: Zeigt alle Ausgaben seit dem letzten Lesen einer Datei, sehr hilfreich, um Logs zu verfolgen.
  • timeout: Timeout killt ein Kommando, nach einer bestimmten Laufzeit.
  • with-lock: Startet ein Kommando mit einer Lockdatei und verhindert so, dass es zwei Mal ausgeführt wird.

Natürlich kann man das auch alles selber machen, aber zu verstehen, wie andere das implementieren, erweitert den Horizont.

Trackbacks

Keine Trackbacks

Kommentare

Ansicht der Kommentare: Linear | Verschachtelt

The Compiler am :

*Erinnert mich an die moreutils, etwas ganz ähnliches.

Achja, kleiner Typo: s/zwei Mail/zweimal/

Patrick am :

*Hier dürfte sich ein kleiner Vertipper eingeschleicht haben:
"dass es zwei Mail ausgeführt" Mail?

Tools klingen interessant!

Cinux am :

*Da der Tippfehler nun schon aufgefallen ist hier mal noch eine wirkliche Frage. :-)

"empty-dir: Gibt zurück, ob ein Verzeichnis leer ist oder nicht."

würde das nicht auch einfach mit einem ls -la funktionieren? So wirklich erschließt mir nicht der Sinn des Scriptes. (Habe den Quellcode bewust noch nicht angeschaut)

Aber ansonsten Danke für den hinweiß, ich habe es mir mal in den Favoriten eingelagert.

Dirk Deimeke am :

*Wie testest Du denn, ob ein Verzeichnis leer ist?

"ls -a" geht, wenn Du es interaktiv nutzt und wie machst Du es in einem Skript?

The Compiler am :

*Also in laptop-mode-tools hab ich mal folgendes, sehr interessantes Konstrukt gesehen:

CODE:
[[ foo/* == 'foo/*' ]] && echo "dir empty"


kreativ, aber hässlich.

In diversen Tutorials findet sich

CODE:
[[ $(ls -A foo) ]] && echo "dir empty"


(*schauder* -- achja, beide Wege ignorieren dotfiles)

Der korrekte Weg in Bash wär eigentlich dieser:

CODE:
shopt -s nullglob
f=( foo/* foo/.[^.]* )
(( ${#f[@]} == 0 )) && echo "dir empty"
shopt -u nullglob

Dirk Deimeke am :

*Das ist ist nicht richtig. Das "-a" oder besser "-A" zeigt dotfiles. Damit ist das auch der gute Weg.

Es gibt kein richtig oder falsch ...

Cinux am :

*Ich teste es mit ls -la und schau nach ob etwas drin ist :-) In einem Script habe ich das bis jetzt nie machen müssen. Aber wenn dann würde ich den
"..
."
Teil von der Ausgabe trennen und nur den Rest betrachten und schauen ob da etwas steht. Wenn nein ist es leer, sonst ist was drin. Das wäre jetzt meine erste Idee. Aber wie gesagt habs noch nie gebraucht und in sachen Bash-scripting bin ich auch noch nicht wirklich Weit, somit sagen mir die Code-Boxen von "The Compiler" nicht wirklich viel ;-)

Dirk Deimeke am :

*Schau Dir einmal "-A" an, das kleine "a" zeigt mit "." und ".." an, das grosse "A" nicht. Das "l" brauchst Du gar nicht.

Cinux am :

*Du hast recht, damit müsste man ja nur schauen ob es außer "insgesamt 0" noch andere ausgabe gibt. Interessant sache :-) Wieder was gelernt.

Wolfsrudel am :

*Ich weiß nicht genau, ob das so hier hinpasst, aber ich habe gerade das entdeckt: http://explainshell.com/

Sehr hübsch und hilfreich!

Dirk Deimeke am :

*Oh, das ist grossartig.

Vielen Dank für den Tipp, das baue ich in meinen nächsten Shell-Kurs ein.

The Compiler am :

*Grad ein kleines Fundstück zu dem Thema:

> Even ls -A solutions can break (e.g. on HP-UX, if you are root, ls -A does the exact opposite of what it does if you're not root -- and no, I can't make up something that incredibly stupid).

http://mywiki.wooledge.org/BashFAQ/004

Dirk Deimeke am :

*Beweis durch Behauptung?

Auf die Wikiseite hätte man schon schreiben können, was ls -A auf HP-UX macht.

Kommentar schreiben

Gravatar, Favatar, Pavatar, Identica, Twitter, MyBlogLog Autoren-Bilder werden unterstützt.
BBCode-Formatierung erlaubt
Umschließende Sterne heben ein Wort hervor (*wort*), per _wort_ kann ein Wort unterstrichen werden.
Standard-Text Smilies wie :-) und ;-) werden zu Bildern konvertiert.
Die angegebene E-Mail-Adresse wird nicht dargestellt, sondern nur für eventuelle Benachrichtigungen verwendet.
:'(  :-)  :-|  :-O  :-(  8-)  :-D  :-P  ;-) 
Formular-Optionen