Hallo,
ich möchte ein großes Verzeichnis mit vielen Unterverzeichnissen (und Leerzeichen im Namen) durchackern lassen und in jedem Unterverzeichnis das eine Datei xy.jpg enthält einen Link xyz.jpg dazu an selber Stelle erstellen. Das ganze soll per cron regelmäßig ausgeführt werden um bei neu hinzukommenden Dateinen die passenden Links automatisch erzeugt zu bekommen.
Ich denke ich mache das besser mit cp statt ln weil, cp die Option -u kennt und damit hoffentlich die vorhandenen Links nicht unnötig neu anlegen würde. Für das Durchackern wird man find und xargs nehmen denke ich, wegen der Leerzeichen -print0 und -0. Leider habe ich Probleme mir aus diesen Grundlagen eine funktionstüchtig Befehlszeile zusammen zu schustern :-/ Es hapert an dem Punkt, dass ich die Links nicht an einem Zielort sammeln, sondern in den jeweiligen Ordnern bei den Originalen erzeugen will. Wie gebe ich cp das Ziel mit Pfad an wenn die Quelle von xargs kommt und den falschen (noch nicht auf xyz geänderten) Dateinamen enthält? Muss ich dafür mit sed rumbasteln oder gibt es eine Möglichkeit den Pfad vom Namen automatisch zu trennen? Oder kann ich cp gleich mitgeben, dass der Zielpfad dem Quellpfad entsprechen soll?
Danke
ich möchte ein großes Verzeichnis mit vielen Unterverzeichnissen (und Leerzeichen im Namen) durchackern lassen und in jedem Unterverzeichnis das eine Datei xy.jpg enthält einen Link xyz.jpg dazu an selber Stelle erstellen. Das ganze soll per cron regelmäßig ausgeführt werden um bei neu hinzukommenden Dateinen die passenden Links automatisch erzeugt zu bekommen.
Ich denke ich mache das besser mit cp statt ln weil, cp die Option -u kennt und damit hoffentlich die vorhandenen Links nicht unnötig neu anlegen würde. Für das Durchackern wird man find und xargs nehmen denke ich, wegen der Leerzeichen -print0 und -0. Leider habe ich Probleme mir aus diesen Grundlagen eine funktionstüchtig Befehlszeile zusammen zu schustern :-/ Es hapert an dem Punkt, dass ich die Links nicht an einem Zielort sammeln, sondern in den jeweiligen Ordnern bei den Originalen erzeugen will. Wie gebe ich cp das Ziel mit Pfad an wenn die Quelle von xargs kommt und den falschen (noch nicht auf xyz geänderten) Dateinamen enthält? Muss ich dafür mit sed rumbasteln oder gibt es eine Möglichkeit den Pfad vom Namen automatisch zu trennen? Oder kann ich cp gleich mitgeben, dass der Zielpfad dem Quellpfad entsprechen soll?
Danke