PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Parameterübergabe 2 Fach



Top44
23-07-2009, 00:25
Hallo Leute!

1 Post also seid freundlich :), spaß bei Seite.

Ich habe ein Script das im Grunde nur 2 Funktionen hat.

1) Ist Kopieren
2) Chownen

Dazwischen sind noch SQL Abfragen. Im Grunde soll dies ein MiniInstaller für Webapplicationen sein.

Code :

db.res ( db & Funktionen ) :

## SQL
host=localhost
user=USER
passwd=PWD
db=DB

gid=`mysql -u $user -p$passwd -D $db -s --execute="SELECT gid FROM installer WHERE domain = '$1'"`

paket=`mysql -u $user -p$passwd -D $db -s --execute="SELECT paket FROM installer WHERE domain = '$1'"`

## END SQL

## VARIABLEN
endpunkt=/var/www/virtual/$1/htdocs/
apppath=/var/www/BLA/BLUBB/tools/applications
echo $2

## FUNKTIONEN
kopieren ()
{
if [ -z $2 ]; then
`unzip -o -q $apppath/$paket.zip -d $endpunkt`
else
`mkdir $endpunkt/$2 && unzip -o -q $apppath/$paket.zip -d $endpunkt/$2`
fi
}

besitz ()
{
`chown -R vu$gid:vu$gid $endpunkt`
}

Das if soll Prüfen on $2 leer ist, und dementsprechend agieren. $1 funktioniert tadellos, $2 wird zwar angenommen ( Was ich auch mit echo $2 Prüfe ) aber nicht genutzt.


Und Installer.sh :

#!/bin/bash
## INCLUDES ##
source db.res
## END ##

## DEBUG
echo "Parameteranzahl = $#"
## DEBUG
kopieren
besitz
exit


So, die installer.sh wird so gestartet : ./installer.sh domain.de forum

Das Problem dabei ist, das der zweite Parameter zwar ankommt aber nicht ausgewertet bzw. Bearbeitet wird.

Was mache ich Falsch ? Währe für jede Hilfe Dankbar!

2) Frage:

Kann mir jemand nen Ansatzpunkt geben, wie ich aus dem sh script returnwerte erhalte ? Um so etwa mit PHP zu Interagieren.


Vielen Dank!

zst
23-07-2009, 15:15
Hallo Top44,
mir erscheinen die Hochkommas in den Funktionen kopieren und besitz überflüssig.
Gruss zst

Top44
23-07-2009, 17:31
Jabs jetzt mit GETOPTS gelöst.
Funktioniert Prima

Danke allen ...

grüße