![](https://seccdn.libravatar.org/avatar/c3746755fcfd20f1965253162a7ae9a2.jpg?s=120&d=mm&r=g)
Hallo Christian, * Am 15.01.2002 um 23:56 Uhr schrieb Christian Boltz:
Hallo Bernd, hallo Thorsten, hallo Jürgen, hallo Waldemar, hallo Leute,
vielen Dank für die umfangreichen Antworten!
;-)
Hier also der Zwischenstand: $ diff -r -q verz_a/ verz_b/ Files verz_a/changedfile and verz_b/changedfile differ Only in verz_a/: new_in_a Only in verz_b/: new_in_b
Für das Schreiben des Scripts bin ich jetzt aber zu müde ;-)
Grundgedanke ist der folgende: diff-Ausgabe in eine Datei umleiten [1], diese mit while und read $1 $2 $3 $4 $5 zeilenweise einlesen, dann - falls $1 = "Files" -> Datei geändert -> $2 [2] ins Changed-Verzeichnis - falls $1 = "Only" und $3 = "verz_a" -> neue Datei -> $4 ins Changed-Verz. - falls $1 = "Only" und $3 = "verz_b" -> gelöschte Datei -> Hinweis ausgeben
[1] sollte auch mit einer Pipe gehen, oder? [2] "verz_a/" muss ich natürlich aus $2 herauslöschen lassen. TEST=`echo "verz_a" | cut -c 7-` sollte das erledigen.
zu [1] diff -r -q verz_a/ verz_b/ | while read Zeile; do set -- $Zeile echo "$1 # $2 # $3 # $4 # $5" # nur als Beispiel done zu [2] Zeile="verz_a/bla/blub.txt" # zu zerlegende Zeile echo ${Zeile:7} # schreibt alles ab der 8 Stelle # 0-7 wird übersprungen bzw. echo ${Zeile#verz_a/} # entfernt 'verz_a/' aus der Zeile hiermit spart man sich den Aufruf des externen <cut> ;-) Jürgen -- Die letzten Worte eines Turmspringers: "Ach, ist das Wasser heute schön klaaaaaaaaaaaar!" / Registered Linux-User #130804 http://counter.li.org \ \ Linux Stammtisch Bremerhaven http://linux.hs-bremerhaven.de /