20-03-2001, 08:10
Hallo,
ich habe ein kleines Problem mit Dateinamen.
Ich muss auf einer Remotemaschine ein paar Sachen übersetzen, und ich will, dass die Quelldatei nur wegkopiert wird, wenn die Kompilierung erfolgreich war.
Ich poste mal mein bisheriges Ergebnis, allerdings läuft das nicht so richtig. Ach ja und rename steht auf der Remote nicht zur Verfügung.
-------
echo "*******************************************"
echo Kompilierungsskript von Martin Ament SG334
echo "*******************************************"
echo
echo
echo Durchsuche das Verzeichnis
echo
echo Kompilierung gestartet > ../compile.log
echo >> ../compile.log
echo date >> ../compile.log
echo >> ../compile.log
echo >> ../compile.log
# Übersetzen
for i in *.fmb;
do
if test -s $i
then
f60genm module=$i userid=xxxxx Compile_All=YES >> ../compile.log
else
echo Es wurden keine Formsmodule gefunden
fi
done
# Und Ordnung machen
# Übersetzte Dateien sind x.fmx
# Quellcode Dateien sind x.fmb
for i in *.fmx;
do
if test -e $i
then
mv $i ../../forms/$i
mv `echo $i | tr x b ` ../../compiled/`echo $i | tr x b `
fi
done
------
Das ganze läuft auch fein, nur habe ich in manchen Dateinamen ein x, zum Bespiel text_form.fmx und er macht mir dann tebt_form.fmb daraus, und das funktioniert leider nicht. Ich habe keine Möglichkeit gefunden um tr auf einen String zu vergleichen sonst könnte ich fmx durch fmb ersetzen lassen.
Wäre nett, wenn mir einer weiterhelfen könnte.
Gruss Martin
ich habe ein kleines Problem mit Dateinamen.
Ich muss auf einer Remotemaschine ein paar Sachen übersetzen, und ich will, dass die Quelldatei nur wegkopiert wird, wenn die Kompilierung erfolgreich war.
Ich poste mal mein bisheriges Ergebnis, allerdings läuft das nicht so richtig. Ach ja und rename steht auf der Remote nicht zur Verfügung.
-------
echo "*******************************************"
echo Kompilierungsskript von Martin Ament SG334
echo "*******************************************"
echo
echo
echo Durchsuche das Verzeichnis
echo
echo Kompilierung gestartet > ../compile.log
echo >> ../compile.log
echo date >> ../compile.log
echo >> ../compile.log
echo >> ../compile.log
# Übersetzen
for i in *.fmb;
do
if test -s $i
then
f60genm module=$i userid=xxxxx Compile_All=YES >> ../compile.log
else
echo Es wurden keine Formsmodule gefunden
fi
done
# Und Ordnung machen
# Übersetzte Dateien sind x.fmx
# Quellcode Dateien sind x.fmb
for i in *.fmx;
do
if test -e $i
then
mv $i ../../forms/$i
mv `echo $i | tr x b ` ../../compiled/`echo $i | tr x b `
fi
done
------
Das ganze läuft auch fein, nur habe ich in manchen Dateinamen ein x, zum Bespiel text_form.fmx und er macht mir dann tebt_form.fmb daraus, und das funktioniert leider nicht. Ich habe keine Möglichkeit gefunden um tr auf einen String zu vergleichen sonst könnte ich fmx durch fmb ersetzen lassen.
Wäre nett, wenn mir einer weiterhelfen könnte.
Gruss Martin