Kopieren von Dateien und oder Verzechnissen

S

Simtrax

Grünschnabel
Hallo,
ich hab hier mal ein kleines Problem oder vielleicht seh ich auch den Wald vor lauter Bäumen nicht.

Mein Bash Skript bekommt als Variablen nacheinander folgende Werte übergeben und soll diese dann kopieren.

test/test1.sh <- Datei
test/test2 <- Verzeichnis
test/test3/test4.sh <- Datei

das Verzechnis test liegt in home und die drei Sachen sollen nach home/new kopiert werden.

cd /home
cp test/test1.sh /home/new
cp -r test/test2 /home/new
cp test/test3/test4.sh /home/new

geht aber nicht da er ja in /home/new auch das test Verzeichnis bzw. test2 und test3 erstellen soll. Wie bewerkstellige ich das?
Wobei das Skript die Verzeichnisse oder Dateien als Variablen übergeben bekommt. Ich weiß halt nicht ob nur ein Datei Name oder
ein Verzeichnis/Dateiname oder ein /Verzeichnis/Verzeichnis/Dateiname als Wert übergeben wird.

Ausgangssituation:
/home/test/test1.sh
/home/test/test2
/home/test/test3/test4.sh

Gewünschtes Ziel:
/home/new/test/test1.sh
/home/new/test/test2
/home/new/test/test3/test4.sh


Ich hoffe mich versteht jemand :)
 
HeadCrash

HeadCrash

Routinier
Abend,

der Parameter "--parents" dürfte dir hier weiterhelfen:

Code:
# man cp
CP(1)                    Dienstprogramme für Benutzer                    CP(1)

BEZEICHNUNG
       cp - Dateien und Verzeichnisse kopieren

ÜBERSICHT
       cp [OPTION]... [-T] QUELLE ZIEL
       cp [OPTION]... QUELLE... VERZEICHNIS

...
       --parents
              Vollständigen Dateinamen der Quelle in VERZEICHNIS benutzen
...


Code:
headcrash@atlantis:~/skriptEcke/tmp$ cp -v --parents  test/test1.sh new
test -> new/test
„test/test1.sh“ -> „new/test/test1.sh“

headcrash@atlantis:~/skriptEcke/tmp$ cp -r -v --parents  test/test2 new
„test/test2“ -> „new/test/test2“

headcrash@atlantis:~/skriptEcke/tmp$ cp -v --parents  test/test3/test4.sh new
test/test3 -> new/test/test3
„test/test3/test4.sh“ -> „new/test/test3/test4.sh“

mfg
HeadCrash
 

Ähnliche Themen

Unix Aufgabe

Kopieren von Dateien per Shell

rsync: Quelle größer als Ziel => "Archiv" aufteilen/splitten

Probleme mit Skript (zum Sichern von Dateien)

Dateien umbennen und verschieben

Oben