Linux

Perl at Commandline

Zuletzt aktualisiert am Freitag, den 08. Januar 2010 um 14:32 Uhr Geschrieben von: Michael Bäcker Freitag, den 08. Januar 2010 um 13:04 Uhr

Perl eignet sich hervorragend als sed Ersatz an der Kommandozeile:

# perl -pi.sic -e "s/foo/bar/g" *.txt

Mittels dieses Befehls wird in allen Dateien mit der Endung .txt des aktuellen Ordners die Zeichenkette "foo" durch "bar" ersetzt. Zuvor wird eine Sicherungskopie der Datei angelegt unter dem Suffix ".sic"

# perl -pi.sic -e  's/<old string>/<new string>/g' `find . -name "<file name>"`

Ersetze in mehreren Dateien, auch in Unterordnern.

 

Vimdiff

Zuletzt aktualisiert am Freitag, den 08. Januar 2010 um 14:31 Uhr Geschrieben von: Michael Bäcker Freitag, den 08. Januar 2010 um 13:02 Uhr

Wenn man nur den Textmodus zur Verfügung hat, sollte man sich vimdiff mal ansehen. Es ist eine gelungene Kompination aus vim und diff -y.

vimdiff1

Ein paar wenige Kommandos sollte man dazu kennen, ebenso wie die Aufrufsyntax.

Aufruf:

vimdiff file1 file2

oder

vimdiff file1 directory2

vimdiff versuchr directory2/file1als zweite Datei zu öffnen.

Folgende Tastenkommandos sollte man einfach mal ausprobieren:

ctrl+w ctrl+w - Fenster wechseln
do - Unterschied (diff) ins aktive Fenster holen
dp - Untschied (diff) ins inaktive Fenster bringen (put)
[c - vorheriger Unterschied
]c - nächster Unterschied
:diffupdate - diff update ;)
:syntax off - syntax off
zo - zusammengefallteten Text öffnen
zc - zusammengefalteten Text schliessen

Dateien mit CPIO verschieben

Zuletzt aktualisiert am Freitag, den 08. Januar 2010 um 14:29 Uhr Geschrieben von: Michael Bäcker Freitag, den 08. Januar 2010 um 12:54 Uhr

Wenn man mehrere Dateien aus einem Verzeichniss oder einem Filesystem verschieben möchte, hier ist ein Weg:

find /old_directory -depth | cpio -pdmv /new_directory

Dies verschiebt die Dateien aus old_directory nach new_directory unter Beibehaltung der Rechte, des Besitzers und Verzeichniss Struktur.

 

Zeilennummern unter Linux

Zuletzt aktualisiert am Freitag, den 08. Januar 2010 um 14:27 Uhr Geschrieben von: Michael Bäcker Freitag, den 08. Januar 2010 um 12:52 Uhr

Wenn man, z.B. zum Drucken, Zeilennummern in einer Datei sehen möchte, eignet sich das Kommando nl unter Linux dafür:

nl file.c > file.c.num

Normalerweise vergibt nl nur Zeilennummern für nicht leere Zeilen.

Um allen Zeilen eine Zeilennummer zu vergeben muß die Option -ba verwendet werden:

nl -ba file.c >file.c.all_num

Weitere Optionen in den Man Pages.

Mehrere große Dateien finden

Zuletzt aktualisiert am Freitag, den 08. Januar 2010 um 14:26 Uhr Geschrieben von: Michael Bäcker Freitag, den 08. Januar 2010 um 12:51 Uhr

Um große Dateien auf einem System zu finden, eignet sich folgendes Kommando:

find / -xdev -size +1024 -exec ls -al {} \; | sort -r -k 5

 

Weitere Beiträge...

Seite 5 von 6

«StartZurück123456WeiterEnde»
Copyright © 2012 baecker.com. Alle Rechte vorbehalten.
Joomla! ist freie, unter der GNU/GPL-Lizenz veröffentlichte Software.