[Shell] Kleine Hilfe für ein exec (mit Varibalen)

Daxi

Erfahrenes Mitglied
Ich habe bisher folgendes Script:
Code:
for file in *
do
	echo "Bearbeite Bild: $file"

	/usr/bin/gimp-2.0 -i -f -d -c -b '(script_fu_locpics "Parameter 1" "Parameter 2" "Parameter 3" "Parameter 4" "Parameter 5" "$PWD/$file" 450 450 TRUE "/home/daxi/logo.xcf" 0 85 75 "/home/daxi/pics/verkleinert/$file")' ' (gimp-quit 0)'
done

echo
echo "Alle Bilder abgearbeitet!"

Nun möchte ich, dass das aktuelle Verzeichnis ($PWD) in den Aufruf eingesetzt wird.Genau so wie $file.
Beides funktioniert nicht.
Wie bekomm ich das hin?
Mit den Backticks (`) funktioniert der Aufruf auch nicht richtig.
 
Warum schreibst Du das, was Du ausführen willst nicht eine Datei und führtst die dann aus?
Code:
echo "/usr/bin/gimp-2.0 -i -f -d -c -b '(script_fu_locpics "Parameter 1" "Parameter 2" "Parameter 3" "Parameter 4" "Parameter 5" "$PWD/$file" 450 450 TRUE "/home/daxi/logo.xcf" 0 85 75 "/home/daxi/pics/verkleinert/$file")' ' (gimp-quit 0)'" >$TMP/doit
bash $TMP/doit
 
Schonmal so probiert?

Code:
for file in *
do
	echo "Bearbeite Bild: $file"

	/usr/bin/gimp-2.0 -i -f -d -c -b '(script_fu_locpics "Parameter 1" "Parameter 2" "Parameter 3" "Parameter 4" "Parameter 5" "${PWD}/${file}" 450 450 TRUE "/home/daxi/logo.xcf" 0 85 75 "/home/daxi/pics/verkleinert/{$file}")' ' (gimp-quit 0)'
done
echo "Alle Bilder abgearbeitet!"

Du kannst auch vorher PWD in eine Variable abspeichern:

Code:
CURDIR=`pwd`
for file in *
do
	echo "Bearbeite Bild: ${file}"

	/usr/bin/gimp-2.0 -i -f -d -c -b '(script_fu_locpics "Parameter 1" "Parameter 2" "Parameter 3" "Parameter 4" "Parameter 5" "${CURDIR}/${file}" 450 450 TRUE "/home/daxi/logo.xcf" 0 85 75 "/home/daxi/pics/verkleinert/{$file}")' ' (gimp-quit 0)'
done
echo "Alle Bilder abgearbeitet!"

Gibt mehrere Möglichkeiten...

Gruß,

der fast noch schlafende Thorsten
 

Neue Beiträge

Zurück