JoeToe

Artikel-Schlagworte: „Bash“

Mit ‘find’ löschen

Freitag, 23. Juli 2010

Es kommt vor, dass man Dateien mit bestimmten Eigenschaften löschen muss oder will. Nun könnte man sich natürlich hinsetzen und alles händisch machen. Das ist aber etwas für geistige Hilfsarbeiter. - So geht es besser:
for i in `find /PATH -name Thumbs.db`; do rm -f $i; done
…wenn man die lästigen Windows-Vorschau-Dateien loswerden will…

oder

for i in `find /PATH -size -1`; do rm -f $i; done
…wenn man alle leeren Dateien löschen will…

Nun muss die Datei ja nicht immer gleich gelöscht werden, es gibt da sicher auch noch andere Anwendungsmöglichkeiten… ;-)

Prozess-IDs anzeigen

Sonntag, 8. März 2009

Automatisiert man Prozesse auf der Bash, so werden auch gern mal die zu den Prorgramm gehörenden IDs benötigt.

So lassen diese sich anzeigen:
ps -ef | awk ‘{print $2}’

Um bestimmte IDs anzeigen zulassen kommt uns ein einfaches “grep” zu Hilfe:
ps -ef | grep bash | awk ‘{print $2}’

Jpeg-Bilder verarbeiten

Sonntag, 1. März 2009

PhotoShop beherrscht Batch-Funktionalitäten, die es erlaubt, wiederkehrende Operationen automatisiert.
In der Unix/Linux-Welt ist eine Software namens “ImageMagick” bekannt und beliebt. Diese erlaubt es auf der Kommandoebene komplex Grafikverarbeitung. Hier sollen alle Bilder (im Verzeichnis) um 50% verkleinern und entsprechend umbenannt werden.

for i in *.jpg
do
convert $i -geometry 50% $(basename $i .jpg)_klein.jpg
done

Natürlich lassen sich hier die Parameter hier sehr gut variieren.

Dateien der letzten 24 Stunden

Donnerstag, 26. Februar 2009

ls -rtl” zeigt die Dateien im aktuellen Verzeichnis in chronologischer Reihenfolge an. Das ist sicher eine sehr wichtige Abfrage, wenn es um einfache zeitliche Rückverfolgung geht. ‘Find’ bietet dort ebenfalls Möglichkeiten:

# Dateien, älter als 24 Stunden
find . -mtime +0

# Dateien, jünger als 24 Stunden
find . -mtime -1

# Dateien, jünger als 24 Stunden
find . -mtime 0

Alias - der Shell-Befehl

Freitag, 20. Februar 2009

Unix bzw. Linux lebt mit dem Ruf nur mit kryptischen Befehlen wirklich zu ‘funktionieren’. Klar ist diese Sicht mehr als oberflächlich, aber manchmal auch nicht ganz ‘un-richtig’.
Viele Befehle können stark parametrisiert werden. ‘Können’ - Nicht ‘müssen’! Wenn man einen Befehl etwas umständlicher wird, man diesen öfter verwenden und sich das Leben nicht unnötig schwer machen will, gibt es ein Hilfsmittel. ‘Alias’. (mehr…)

Befehlsausgabe umleiten

Donnerstag, 19. Februar 2009

Sei es nun Linux oder der große Bruder Unix - Das Arbeiten auf der Shell ist sehr effizient. …aber sehr Informativ. Denn man bekommt auf der Kommandozeile meistens sehr viel mehr Informationen als in der GUI. Was ist aber, wenn man diese Informationen gar nicht sehen will..wenn diese also stören? (mehr…)

Bunte Shell

Donnerstag, 19. Februar 2009

Farben machen gute Laune! Warum also nicht auch eine farbenfrohe Bash-Ausgabe?

Hier ein paar kleine Bespiele:
printf “\033[1m \033[41m Hintergrund in Rot \033[0m \033[0m \n\n”
printf “\033[1m \033[42m Hintergrund in Gruen \033[0m \033[0m \n\n”
printf “\033[1m \033[43m Hintergrund in Gelb \033[0m \033[0m \n\n”
printf “\033[1m \033[44m Hintergrund in Blau \033[0m \033[0m \n\n”
printf “\033[1m \033[45m Hintergrund in Lila \033[0m \033[0m \n\n”
printf “\033[1m \033[46m Hintergrund in Hellblau \033[0m \033[0m \n\n”
printf “\033[1m \033[47m Hintergrund in Grau \033[0m \033[0m \n\n”
printf “\033[1m \033[21m Text weiss unterstrichen \033[0m \033[0m \n\n”
printf “\033[1m \033[30m Text in Silver \033[0m \033[0m \n\n”
printf “\033[1m \033[31m Text in rot \033[0m \033[0m \n\n”
printf “\033[1m \033[32m Text in gruen \033[0m \033[0m \n\n”
printf “\033[1m \033[33m Hintergrund in Gelb \033[0m \033[0m \n\n”
printf “\033[1m \033[34m Hintergrund in Lila \033[0m \033[0m \n\n”
printf “\033[1m \033[35m Hintergrund in Hellblau \033[0m \033[0m \n\n”
printf “\033[1m \033[20m Hintergrund in Grau \033[0m \033[0m \n\n”
printf “\033[1m \033[22m text in whitesmoke \033[0m \033[0m \n\n”

Zufallszahl auf der Shell

Sonntag, 8. Februar 2009

Manchmal, wann weiß ich auch nicht, kann es nötig sein eine Zufallszahl auf der Shell (Bash) zu generieren. Die lässt sich sehr gut mit Hilfe von ‘/dev/random’ bzw. ‘$RANDOM’ machen. ‘$RANDOM’ gibt eine “unkontrolliert große” Zahl aus. Mit dem Modulus (%) kommt man an den Rest einer Division - Die Folge: Eine Zufallszahl von 0 bis MAX.

ZUFALLSZAHL=$(($RANDOM % MAX))

MAX ist die maximale Zahl und muss durch eine natürliche Zahl größer Null sein.

Funktionen in der Bash

Samstag, 7. Februar 2009

Nicht nur moderne Programmiersprachen kennen Prozeduren und Funktionen. Auch die ‘normale’ Bash kennt diese Möglichkeit zur Strukturierung und Wiederverwendbarkeit von Befehlsabfolgen. (mehr…)