Praktische Shell-Befehle
grep
Der Befehl "grep" kann Teile aus Zeichenketten, z.B. ASCII-Dateien extrahieren. Sehr nützlich um Quelltexte zu durchsuchen:
Suche nach "PriceTypeEnum" ohne dabei Subversion-Verzeichnisse zu durchsuchen innerhalb aller Dateien:
grep -rn iceTypeEnum bin/ | grep -v '/\.svn'
Suchen und Ersetzen mit "sed"
Will man in der Konsole z.B. innerhalb von PHP-Dateien bestimmte Texte durch andere ersetzen, bietet sich der folgende Befehl an:
find . -name "*.php" -exec sed -i 's/zu suchender Text/neuer Text/g' {} \;
Suche nach Platzfressern per "du -h"
Der Befehl du (disk usage) gibt aus, wie viel Byte Platz ein bestimmtes Verzeichnis inklusive seiner Unterverzeichnisse belegt. Unhandlich ist, dass die Ausgabe nicht sortiert werden kann. Durch die praktische Pipe kann die Ausgabe jedoch an sort übergeben werden. Am Ende steht dann der Platzfresser Nummer eins:
mwa@is-wagner:~/is-wagner.com/htdocs/$ du -b|sort -n
5165003 ./typo3conf/ext/phpmyadmin/modsub/phpMyAdmin-2.6.4-pl3 5190397 ./typo3conf/ext/phpmyadmin/modsub 5236459 ./typo3conf/ext/phpmyadmin 5357634 ./fileadmin/images/banner 7686272 ./uploads/pics 9635120 ./typo3temp 10314718 ./uploads 13247332 ./phpdoc_eShop/phpdoc 18348869 ./typo3conf/ext 19814334 ./phpdoc_eShop 20784719 ./typo3conf 69108639 ./fileadmin/images 76442379 ./fileadmin 142979111 . mwa@is-wagner:~/is-wagner.com/htdocs$ du -sh fileadmin/ 75M fileadmin/
Es ist hier ersichtlich, dass der Ordner "fileadmin" am meisten Platz benötigt. 75 MB.
Datum von Dateien verändern
Mit dem praktischen Befehl touch kann nicht nur kurz eine Datei erstellt werden, sondern auch die Zeitangaben der Datei auf den gewünschten Wert gesetzt werden:
touch -c -t 04170822 error.log touch -am -t 12121711 error.log
Im Beispiel sehen wir, dass das Erstellungsdatum der Datei "error.log" zuerst auf den 17. April 2007 8 Uhr 22 gesetzt wird. Dann wird die Zugriffszeit (a) sowie die Zeit der letzten Änderung (m) auf den 12. Dezember 17 Uhr 11 gesetzt.
Mehr über mögliche Datumswerte kann man mit "man touch" nachschauen.
IP-Adresse sperren per iptables
Immer wieder praktisch, wenn man von einer IP-Adresse mit Login-Versuchen o.ä. zugemüllt wird:
iptables -I INPUT -s 216.240.143.112 -j DROP
Webseiten komplett runterladen mit wget
Für das Lesen unterwegs oder die spätere Referenz kann es praktisch sein, Webseiten inklusive Bilder und anderen Multimediadateien lokal zu speichern. Sehr gut geht das mit dem Kosolen-Tool wget. Hier bietet sich der folgende Aufruf an:
wget -m -w 2 -p --convert-links http://www.michael-wagner.de
