Zum Inhalt springen

Script (bash), dass Verzeichnisstrukturen vergleicht und Links anlegt...


van_haakonnen

Empfohlene Beiträge

ich hab doch ne Frage... :rolleyes:

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...

Link zu diesem Kommentar
Auf anderen Seiten teilen

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

Link zu diesem Kommentar
Auf anderen Seiten teilen

  • 2 Wochen später...

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

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...