van_haakonnen Geschrieben 15. Dezember 2005 Autor Geschrieben 15. Dezember 2005 PERFEKT! Jetzt geht es problemlos! Ich dankeeeeeeeeeeee euch! :uli
Schlaubi Geschrieben 15. Dezember 2005 Geschrieben 15. Dezember 2005 Naja perfekt ist das noch nicht aber wenn du damit zufrieden bist :e@sy
t3quill4b0y Geschrieben 15. Dezember 2005 Geschrieben 15. Dezember 2005 dann is ja gut wenn alle happy sind
van_haakonnen Geschrieben 18. Dezember 2005 Autor Geschrieben 18. Dezember 2005 ich hab doch ne Frage... wir haben ja jetzt einfach ein rm -Rf /$ZIEL/* und löschen sicherheitshalber den ganzen Inhalt des Zielordners... Wie müsste das denn aussehen, wenn man eine Überprüfung einbauen will und die Links nur dann anlegt wenn Sie noch nicht vorhanden sind? Also nur neue anlegt...
Schlaubi Geschrieben 19. Dezember 2005 Geschrieben 19. Dezember 2005 Moin, der folgende Codeschnipsel sollte dir weiterhelfen (Inhalt von xx: 1x der Name eines existierenden Links und 1x ein Name eines nicht existenten Links): #! /bin/bash for name in $(cat xx); do test [b]-L[/b] "$lnam" && { echo "'$name' ist ein vorhandener Link."; } || { echo "'$name' ist kein Link."; } done
van_haakonnen Geschrieben 20. Dezember 2005 Autor Geschrieben 20. Dezember 2005 okay - danke aaaber - an welcher Stelle muss ich das jetzte einbauen damit es funktioniert? :confused: das rm -Rf /$ZIEL/* nehme ich raus. Und dann baue ich das andere....wo und wie ein? Tut mir leid aber ich bin doch nen Anfänger... :hells:
t3quill4b0y Geschrieben 20. Dezember 2005 Geschrieben 20. Dezember 2005 moin, ich würde sagen genau an der Stelle wo du das rm -Rf /$ZIEL/* entfernst. Aber du solltest die "echo"-Zeilen dann druch deine gewünschten Aktionen ersetzen cu
van_haakonnen Geschrieben 4. Januar 2006 Autor Geschrieben 4. Januar 2006 hmhm... ich war leider sehr lange krank und konnte nicht weitermachen.. also ich grabe den threat mal wieder aus das mit dem cat xx habe ich noch nicht wirklich verstanden.. ich habe es jetzt mal so umgebaut: #!/bin/sh #set -x clear echo echo echo "SYMLINKS" echo #Konfiguration QUELLE=home/test ZIEL=home/test2 #Root-Rechte if [ "$UID" -ne "0" ] then echo "Sie benoetigen Root-Rechte." exit $E_NOTROOT fi #Symlink for name in $(cat xx); do test -L "$lnam" && { echo "'$name' ist ein vorhandener Link."; } || { echo "'$name' ist kein Link."; foo=0 for i in $(find /$QUELLE/) do liste[$foo]=$(basename $i) foo=$foo+1 done for name in ${liste[@]} do eins=${name:0:1} zwei=${name:1:1} mkdir -p /$ZIEL/$eins/$zwei ln -sf /$QUELLE/$name /$ZIEL/$eins/$zwei/$name done } done echo "Die Links wurden erfolgreich angelegt bzw. aktualisiert!" echo exit 0 Aber dabei bekomme ich folgendes: cat: xx: No such file or directory
Joe Kinley Geschrieben 4. Januar 2006 Geschrieben 4. Januar 2006 for name in $(cat xx); do Darauf bezieht sich doch der Fehler... was willst du da auslesen ... xx ? In welchem Verzeichnis? Oder meintest du damit was anderes.... ?
van_haakonnen Geschrieben 4. Januar 2006 Autor Geschrieben 4. Januar 2006 Wie auf Seite 2 steht. Ich will nicht einfach alle Ordner löschen und alle Symlinks neu anlegen sondern überprüfen ob sie schon vorhanden sind und wirklich nur dann neu anlegen... also will ich hmhm auslesen ob es halt den Symlink den er gerade anlegen soll schon gibt... irgendwie so...
Empfohlene Beiträge
Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren
Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!
Neues Benutzerkonto erstellenAnmelden
Du hast bereits ein Benutzerkonto? Melde Dich hier an.
Jetzt anmelden