|
MarcelF6
Anmeldungsdatum: 17. Februar 2013
Beiträge: Zähle...
|
Hallo miteinander An unserer Serverinfrastruktur wurden im letzten Jahr einige Arbeiten vorgenommen; u.a. haben sich die Speicherverzeichnisse geändert. Die Ordnerstruktur ist nach wie vor dieselbe, nur anstatt in "C:/home/user1/project/files/" finden sich nun alle Daten in "C:/storage/st1/home/user1/project/files/" wieder. Da ich viele Skripte habe, in welchen immernoch das alte Verzeichnis verwendet wird, wollte ich fragen, ob es eine Möglichkeit gibt, die Links in der Shell / sonst wie direkt anzupassen? Vielen Dank für alle Hinweise!
|
|
rklm
Projektleitung
Anmeldungsdatum: 16. Oktober 2011
Beiträge: 13242
|
Sprechen wir hier von einem Windows-System?
|
|
Curnen
Anmeldungsdatum: 23. Januar 2008
Beiträge: Zähle...
|
Also du kannst mit grep -l auf jeden Fall die Dateien ausgeben lassen, die den alten Pfad enthalten. Dann ggfs. mit sed ersetzen? Ist jetzt nicht getestet, aber vielleicht grob in der Art: | grep "C:/home/user1/project/files/" -R -l | while read FILE
do
sed 's|C:/home/user1/project/files/|C:/storage/st1/home/user1/project/files/|g' "$FILE" > "$FILE.new"
done
|
VG
Thias
|
|
rklm
Projektleitung
Anmeldungsdatum: 16. Oktober 2011
Beiträge: 13242
|
Curnen schrieb: Also du kannst mit grep -l auf jeden Fall die Dateien ausgeben lassen,
... wenn es ein Unix-artiges System ist.
die den alten Pfad enthalten. Dann ggfs. mit sed ersetzen?
Wozu? Es reicht doch ein Symlink, wenn das Dateisystem Symlinks kann (was man bei einem Ubuntu 14.04 annehmen muss). Die Frage ist halt, was ist das für ein System und liegen die Dateien lokal oder auf einem Netzwerkshare?
|
|
Curnen
Anmeldungsdatum: 23. Januar 2008
Beiträge: Zähle...
|
Stimmt, die einfachen Lösungen sind die besseren! Ich hatte irgendwie da rausgelesen, dass er die Skripte anpassen wollte.
|
|
user_unknown
Anmeldungsdatum: 10. August 2005
Beiträge: 17630
|
"C:" sieht aber nach einem Windowspfad aus, und Windows-Dateisysteme können m.W. keine symbolischen Links, das ist doch ein Dateisystemfeature.
|
|
rklm
Projektleitung
Anmeldungsdatum: 16. Oktober 2011
Beiträge: 13242
|
user_unknown schrieb: "C:" sieht aber nach einem Windowspfad aus,
Deswegen hatte ich ja danach gefragt, was das Szenario ist.
und Windows-Dateisysteme können m.W. keine symbolischen Links, das ist doch ein Dateisystemfeature.
Der Windows-Explorer nutzt zwar diese speziellen Referenzdateien (enden auf .lnk), aber NTFS kann sehr wohl Symlinks (siehe hier).
|
|
MarcelF6
(Themenstarter)
Anmeldungsdatum: 17. Februar 2013
Beiträge: 15
|
Sorry wegen meiner späten Antwort.
Das wegen dem "C:/..." war nur ein Beispiel. Tatsächlich handelt es sich um ein UNIX-System (Linux). Die Dateien liegen auf einem Server; da haben mehrere Personen die Rechte, darauf zuzugreifen. Wäre hiermit immernoch "grep" + "sed" die beste Methode, oder was meint ihr?
|
|
MarcelF6
(Themenstarter)
Anmeldungsdatum: 17. Februar 2013
Beiträge: 15
|
Ah und PS: Danke für alle bisherigen Inputs!
|
|
rklm
Projektleitung
Anmeldungsdatum: 16. Oktober 2011
Beiträge: 13242
|
MarcelF6 schrieb: Das wegen dem "C:/..." war nur ein Beispiel.
Es ist schon wichtig, dass Du die wirklichen Begebenheiten präsentierst. Sonst kann man Dir auch nicht wirklich helfen.
Tatsächlich handelt es sich um ein UNIX-System (Linux). Die Dateien liegen auf einem Server; da haben mehrere Personen die Rechte, darauf zuzugreifen. Wäre hiermit immernoch "grep" + "sed" die beste Methode, oder was meint ihr?
Nein. Symlink anlegen. Allerdings, wenn die genannten Pfade echt wären, dann könnte es mit dem Ansatz ein Problem geben, weil Du dann / nach /storage/st1 linken müsstest, was offensichtlich eine blöde Idee ist. Du könntest natürlich auch /home/user1/project/files nach /storage/st1/home/user1/project/files linken - oder einen Pfad dazwischen.
|
|
MarcelF6
(Themenstarter)
Anmeldungsdatum: 17. Februar 2013
Beiträge: 15
|
@rklm: Vielen Dank für deine Antwort! Könntest du mir evtl. ein Beispiel mit den Symlinks machen? (Also vorheriges Verzeichnis, neues Verzeichnis und den Befehl für Symlink?)
Shame on me, dass ich Symlink (noch) nicht kenne...
|
|
rklm
Projektleitung
Anmeldungsdatum: 16. Oktober 2011
Beiträge: 13242
|
Fang doch mal mit Symlink an.
|