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!
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!