Netzkompetenz

Blog mit Snippets, Tipps und Tricks rund um Webprogrammierung der Taywa aus Zürich

unix bash-shell befehle spickzettel

bash-shell befehle, die immer wieder gebraucht werden:

dns einträge testen, ip von server sehen:

# ip und aliase zeigen
host www.meinedomain.ch
# nach ip auflösen über bestimmten dns
host www.domain.ch ns1.taywa.net

tar.gz dateien packen/anlegen bzw. entpacken:

# rechte und symlinks bleiben beim packen/entpacken erhalten
# 
# komprimieren (.tgz oder .tar.gz - eigentlich dasselbe):
tar czfv dateiname.tgz ordnername/*
#
# entpacken:
tar xfvz dateiname.tar.gz

symbolic link anlegen:

# wenn "linkname" nicht angegeben wird,
# bekommt der link den namen des zielordners 
ln -s pfad/zum/ziel linkname

rechte rekursiv ändern:

# rekursiv  für user(owner), gruppe und others schreibrechte hinzufügen
chmod -R ugo+w *
# gruppe und others schreibrechte wegnehmen:
chmod go-w ordnername

shellscript „for“ schlaufe mit gefundenen dateinamen:

# bilder mit mask.png maskieren und in ordner "res" speichern:
for i in $(ls *.png); do composite -compose CopyOpacity ../mask.png $i res/$i ; done

rekursiv string in dateien suchen:

# wird nur * angegeben, sucht es im aktuellen verzeichniss:
grep -R 'string' /path/to/files/*

befehl rekursiv auf mit regex ausgewählte dateien anwenden (mit dem vorteil, erstmal einen dry-run ohne befehl zu machen zu können um die regex zu testen):

# find .		findet alles rekursiv
# grep			regular expression für dateinamen: ende$	^beginn
# xargs befehl	nimmt den pfad als parameter für den befehl
find . | grep ext$ | xargs rm
Autor: am
Themen: Ubuntu
Stichworte:

TrackBack URL

Hinterlasse einen Kommentar, wir freuen uns über jedes Feedback.