kostenloser Webspace werbefrei: lima-city


Linux Bash Dateien Finden und Ersetzen

lima-cityForumProgrammiersprachenSonstige Programmiersprachen

  1. Autor dieses Themas

    sawei3

    Kostenloser Webspace von sawei3

    sawei3 hat kostenlosen Webspace.

    Hi!

    Folgendes Problem: Ich habe x Bilder, die ich bearbeitet habe und auf einen Server lade!

    Nun will ich, dass die vorhandenen Bilder (Dateinamen sind gleich) mit den bearbeiteten Bildern ersetzt werden!

    Jedoch liegen die zu ersetzenden Dateien in verschiedensten Unterverzeichnissen!

    Daher würde ich ein Bash bzw Shell Script benötigen, dass mir die zu ersetzenden Dateien findet, und dann diese auch ersetzt!

    Leider hab zu wenig Ahnung mit Shell Scripts um dies selbst coden zu können!

    Danke schon im Voraus!

    Lg.
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. Hallo :wave:

    sawei3 schrieb:
    Folgendes Problem: Ich habe x Bilder, die ich bearbeitet habe und auf einen Server lade!
    Nun will ich, dass die vorhandenen Bilder (Dateinamen sind gleich) mit den bearbeiteten Bildern ersetzt werden!
    Jedoch liegen die zu ersetzenden Dateien in verschiedensten Unterverzeichnissen!


    Versteh' ich nicht. Wenn du einen Ordner mit Bildern hast, diesen aber mit einem anderen Ordner mit anderen Bildern ersetzen willst, dann lösche den Ordner doch einfach und verschiebe den neuen Ordner? Geht sogar per sftp..

    Ooooder mit cp.

    cp -r ./* /ziel/ordner/ o.ä., dann alten Ordner löschen rm -r /alter/ordner

    mfg :wave:
  4. Hallo,

    wie sieht den die Ordnerstruktur aus?

    Sind die bearbeiteten Bilder in mehrere Unterordner zerstückelt oder liegen die alle in einem Ordner?

    Vorher können dir auch Experten nicht helfen.

    Mit freundlichen Grüßen
  5. Autor dieses Themas

    sawei3

    Kostenloser Webspace von sawei3

    sawei3 hat kostenlosen Webspace.

    Hi!
    Die zu ersetzenden Bilder liegen in x Unterordner verteilt.... und ich weiß es leider nicht wo welches bild liegt!
  6. hackyourlife

    Moderator Kostenloser Webspace von hackyourlife

    hackyourlife hat kostenlosen Webspace.

    also z.b. sowas?
    x/bild1.png
    x/bild2.png
    y/bild3.png
    y/z/bild4.png
    und ersetzen magst du z.b.
    bild1.png
    bild4.png
    ?

    Das würde sich mit solch einem Script lösen lassen
    #!/bin/sh
    search="."
    
    if [ $# -lt 1 ]; then
    	echo "Usage: $0 replacedir [searchdir] ..."
    	echo "  searchdir defaults to \".\""
    	exit 1
    fi
    
    replace="$1"
    shift
    
    tmp="replace.$$"
    ls "$replace" > "$tmp"
    /bin/find $* | grep -Ff "$tmp" | while read dst
    do
    	src="$replace/`basename $dst`"
    	[ ! -f "$src" ] && continue
    	echo "replacing $dst"
    	cp "$src" "$dst"
    done
    rm "$tmp"
    Das Script macht Folgendes:
    • den Inhalt des Ordners, der als erstes Argument (
    replacedir
    ) übergeben wurde auflisten. Dies sind die Dateien, die ersetzt werden sollen.
    • alle Dateien im
    searchdir
    auflisten, auch in Unterordnern.
    • Wenn eine Datei im
    searchdir
    den gleichen Namen wie eine im
    replacedir
    hat wird sie ersetzt.
  7. Autor dieses Themas

    sawei3

    Kostenloser Webspace von sawei3

    sawei3 hat kostenlosen Webspace.

    Besten Dank!
    Genau sowas hab ich gesucht!

    Lg.
  8. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!