PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : [bash] jede datei eines ordners verarbeiten



quinte17
15-02-2007, 21:10
hallo allerseits.
ich habe das problem dass ich mich mit bash-scripting nicht so gut auskenne.
folgender aufbau:

ordnerstruktur:


./
./ordner/blablubxxx
./ordner/blablubyyy
./ordner/blablubzzz
./file.txt
./import.file
./datenbankfile


ich brauche ein script, welches jede datei des ordners einzeln auf das import.file draufkopiert, und dann ein programm mit einem parameter startet.
programmaufruf sieht dann ungefähr so aus:
schönesprogramm ./datenbankfile

gut wäre auch, dass der gerade kopierte dateiname in file.txt drinstehen würde. (immer nur 1 datei nahme auf einmal)

ich hab da grad keinen plan wie ich anfangen soll.
bin für jede hilfe dankbar!

greetz

peschmae
15-02-2007, 21:51
for f in ordner/*; do
cp $f import.file;
echo basename $f > file.txt
schönesprogramm ./datenbankfile
done

falls ich das richtig verstanden habe und falls die Dateien in Ordner keine leerzeichen im Dateinamen haben.

Mit Leerzeichen ist auch keine Sache - muss man aber etwas abändern. ;)

MfG Peschmä

quinte17
16-02-2007, 10:21
danke schonmal für das geniale script, ich habe nur noch ein kleines problemchen.
das script soll unter macosx laufen, und ich habe leider keine echte binary zum ausführen, sondern nur einen komischen blablub.app ordner. in dem ordner ist leider nirgends ein binary zu finden.
ich habe nun ein wenig gesucht und herausgefunden, dass ich mithilfe eines apple scripts zumindest diese zeile nachahmen kann.

osascript testscript.as
das script sieht zum beispiel so aus:

tell application "FileMaker Developer 6 A"
activate
end tell
nachdem allerdings das programm gestartet ist, beendet sich das oascript,
ohne auf das ende des programms zu warten.

weiß einer eine möglichkeit um entweder solche komischen app-ordner vom mac unter der bash zu starten, oder wie man das oascript auf die beendigung des programms warten lassen kann?

greetz

peschmae
16-02-2007, 18:11
Mit MacOS X kann ich dir leider gar nicht weiterhelfen. Aber viel Glück noch auf jeden Fall ;)

MfG Peschmä