PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Datei in vielen Verzeichnissen automatisch



zara
25.12.07, 20:38
Hallo allerseits,

ich stehe vor dem Problem, daß ein Verzeichnis auf meinem Webserver einige tausend Unterverzeichnisse hat - und in jeden einzelnen Ordner davon eine bestimmte Datei abgelegt werden soll. (immer die selbe)

Nun habe ich verständlicher Weise wenig Lust, dies manuell zu machen und frage mich, ob man das nicht auch mit irgendeinem Befehl auf der Konsole tun könnte. Leider hab ich noch zu wenig Ahnung von Linux, um zu wissen, ob das überhaupt geht - und wenn ja, dann wie......

ich hoffe, ihr könnt mir da helfen

frohe Weihnachten!
zara

dsiggi
25.12.07, 20:50
#!/bin/bash
dirs=$(ls)

for d in $dirs; do
cp /pfadzudatei/datei.xyz ${d}/.
done


Einfach den Inhalt in eine Datei kopieren, ausführbar machen, und im Verzeichnis, wo die ganzen andern drin sind ausführen.

dsiggi

zara
25.12.07, 22:26
super, Danke!

Aber irgendwas mache ich wohl noch falsch - egal, wie ich den Pfad in der Datei angebe
(die Datei "php.ini" soll in sämtliche Ordner kopiert werden)

/pages/5e/01/d0035693/home/htdocs/files/php.ini .
oder
/php.ini .

ich bekomme immer die Fehlermeldung:
"cp: cannot stat `/pages/5e/01/d0035693/home/htdocs/files/php.ini': No such file or directory"
bzw
cp: cannot stat `/php.ini': No such file or directory

Egal, welche Variationen des Pfades ich probiert habe.....kommt diese Fehlermeldung.
Tippfehler sind aber ausgeschlossen (ich habe den Pfad jeweils per copy&paste übernommen)

wo steckt das Problem?

vielenDank
zara

dsiggi
25.12.07, 22:50
Hi,
versuch es mal wie folgt. ich glaub der Punkt bei ${d}/. stört.



#!/bin/bash
dirs=$(ls)

for d in $dirs; do
cp /pages/5e/01/d0035693/home/htdocs/files/php.ini ${d}/
done


dsiggi

zara
26.12.07, 00:08
prima - klappt wunderbar!

danke und guten Rutsch!
zara

zara
26.12.07, 11:24
Hallo,

ich war wohl etwas voreilig - so ganz 100% läuft´s noch nicht.
Die php.ini wird zwar geschrieben, aber nur in die Ordner der ersten Ebene.
Ordner in zweiter, dritter usw Ebene werden nicht mit einbezogen.
(und das wär eigentlich die Hauptsache)

allerbesten vorauseilenden Dank!
zara

Manoman
26.12.07, 12:03
Hi

das hier kopierts deine php.ini ins JEDES Unterverzeichnis


find -type d -exec cp DIEPHP.INI {}/ \;


ist das zuviel des guten ?
Du machst doch hoffentliech die Experimente, mit Kopien oder temps ?

bye

dsiggi
26.12.07, 12:06
Ach, ich wusset nicht das es auch noch Ordner in andren Ebenen gibt.

Bin etz mit mein Latein am Ende. Hab ne Idee wie mans lösen könnte, weis aber nicht wie ich sie realisieren soll.


Edit: Okay Manoman hat eine Lösung.

dsiggi

zara
26.12.07, 14:30
Es hat geklappt - es ist auch nicht zu viel des Guten.
(ich habe es vorher in einer nicht genutzten Foreninstallation getestet)

Dank euch Beiden hat sich das jetzt sehr schnell lösen lassen - und ich hab wieder ein bissel was gelernt.

besten Dank!
zara