2017-01-16 2 views
0

Ich habe zwei verschiedene Ordner, sagen Ordner 1 und Ordner 2. Eine Reihe von Dateien werden die ganze Zeit in Ordner 1 erstellt (sie sind noch nicht da).Create Symlink für einen Ordner, keine Datei

Ich möchte diese Dateien "physisch" in Ordner 2 haben, aber dass sie "symbolisch" in Ordner 1 sind (weil für neue Dateien, die immer noch in Ordner 1 erstellt werden, die vorherigen Dateien benötigt werden) auch).

Ich weiß, ich kann eine symlink für eine bestimmte Datei von einem Ordner zum anderen erstellen.

Aber wie würde es funktionieren, wenn im Allgemeinen ALLE zukünftigen Dateien von Ordner 1 (mit anderen Namen) physisch in Ordner 2 und symbolisch in Ordner 1 wären?

Ich glaube, ich würde eine Linie haben, die sie physisch zu Ordner verschiebt 2, und das schafft einen symbolischen Link zum Ordner 1.

Ich habe versucht:

ln -s ./output/* ../../data/jadecheclair/plasim_output/fix_alb/output_try/* 

wo ./output/ der Ordner ist sie erstellt in (Ordner 1) und ../../data/jadecheclair/plasim_output/fix_alb/output_try/ ist der Ordner, ich möchte sie in physisch sein.

+0

Warum erstellen Sie keinen Symlink zwischen zwei Ordnern, wie ln -s Ordner_1 Ordner_2? –

Antwort

0

Was Sie könnten versuchen, ist alle alten Dateien, die nes Verzeichnis verschieben, entfernen Sie es und Ihr Link erstellen:

mv ./output/* ../../data/jadecheclair/plasim_output/fix_alb/output_try/ 
rm -ri ./output/ 
ln -s ../../data/jadecheclair/plasim_output/fix_alb/output_try/ ./output/ 

Dann sollten Sie haben

$ ls -la 
[..] 
output -> ../../data/jadecheclair/plasim_output/fix_alb/output_try/ 

Und in ./output/ erstellten Dateien sollten physisch sein in ..../output_try/

+0

Also würde mir der Fehler geben, dass das Verzeichnis ./output nicht existiert (wenn ich es vorher gelöscht habe). Wenn ich es vor dem Schreiben dieser Zeile erstellen, schreibt es immer noch die Dateien in ./output:/ – JadeChee

+0

Entschuldigung für mein Missverständnis. Hast du es versucht? Ich verstehe nicht was * Also würde * bedeuten. –

+0

* Das wäre *, Entschuldigung. Ich denke, das Problem ist, dass ich eine direkte Zeile in meinem Shell-Skript brauche, um die Dateien in den Quellordner anstatt in den verknüpften Ordner zu speichern. Es scheint, als ob es keine Möglichkeit gibt, dies über Symlink zu tun. Was Sie jedoch geschrieben haben, funktioniert, sobald diese Dateien im Quellordner erstellt wurden. – JadeChee

Verwandte Themen