Shell vs. PHP

X

xXNemesisXx

Hallo,

ich habe ein Shell Script! *jubbel*

da drin habe ich viele Variablen!

variable=wert <-- Variable!

Nun möchte ich aber mit PHP udn HTML (Sprich einem Formular) diese Shell Variablen bearbeiten können.

Ich habe schon seit Tagen dieses Problem und habe man pages und Tutorials gelesen, in anderen Foren rum gefragt usw usw.

----

Ich dachte mir ich bestimme die Variablen mit dem Formular aber das bekomme ich nicht hin.

damit ihr wisst wovon ich rede...

BackUp Script:

Code:
#!/bin/sh


#####################
##    Variablen    ##
#####################

buname=BackUp

maindir=/var/www/

mkpic=MyPics
mkmus=MyMusic
mkmov=MyMovies
mkdoc=MyDocs
mkscr=MyCodes
 mkscrphp=PHP
 mkscrhtml=HTML
 mkscrcss=CSS
 mkscrjs=JavaScript
 mkscrsh=ShellsScripts
 mkscroth=Other
mktar=MyArchivs
 mktartar=Normale
 mktargz=Komprimierte
mkoth=MyOther
mkbackup=MyBackUps

dirpic=$mkpic
dirmus=$mkmus
dirmov=$mkmov
dirdoc=$mkdoc
dirscr=$mkscr
 dirscrphp=$mkscr/$mkscrphp
 dirscrhtml=$mkscr/$mkscrhtml
 dirscrcss=$mkscr/$mkscrcss
 dirscrjs=$mkscr/$mkscrjs
 dirscrsh=$mkscr/$mkscrsh
 dirscroth=$mkscr/$mkscroth
dirtar=$mktar
 dirtartar=$mktar/$mktartar
 dirtargz=$mktar/$mktargz
diroth=$mkoth
dirbackup=$mkbackup

#####################
## Verz. erstellen ##
#####################

mkdir $dirpic
mkdir $dirmus
mkdir $dirmov
mkdir $dirdoc
mkdir $dirscr
 mkdir $dirscrphp
 mkdir $dirscrhtml
 mkdir $dirscrcss
 mkdir $dirscrjs
 mkdir $dirscrsh
 mkdir $dirscroth
mkdir $dirtar
 mkdir $dirtartar
 mkdir $dirtargz
mkdir $diroth
mkdir $dirbackup

#########################
## Dateien Verschieben ##
#########################

mv *.{png,jpg,jpeg,bmp,gif,tiff} $dirpic
mv *.{php,php2,php3,php4,php5} $dirscr/$dirscrphp
mv *.{css,css2,css3} $dirscr/$dirscrcss
mv *.{html,xhtml,htm} $dirscr/$dirscrhtml
mv *.{js,jscript} $dirscr/$dirscrjs
mv *.{xml,inc} $dirscr/$dirscroth
mv *.{bash,ksh} $dirscrsh
mv *.{tar,rar} $dirtartar
mv *.{tar.bz2,gz,tar.gz,bz2,zip,gzip} $dirtargz
mv *.{odt,doc,docx,txt} $dirdoc

############
## BackUp ##
############

tar cvf ${buname}_$(date "+%d.%m.%y").tar {$dirpic,$dirmus,$dirmov,$dirdoc,$dirscr,$dirtar,$diroth }
mv $buname.tar $dirbackup

Das möchte ich als eine Art Einstellungs Seite Bearbeitbar machen.
z.B. soll der Name der BackUp Datei bestimmt werden können.
oder das Verzeichnis was ge .tar t werden woll ausgewählt werden können.

BITTE HILFT MIR!
ich hab schon Kopfschmerzen am ganzen körper!
 
Das Primitivste ist das Folgende.

Ich rate dir aber ausdrücklich davon ab, weil es bessere Methoden gibt, so etwas zu realisieren.
Außerdem ist es unsicher, weil nicht passwortgeschützt.
Außerdem ist es besch*, Bash-Skripte zu parsen, was hier nicht getan wird.


zum Einlesen

Code:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <title>Irgendwas</title>
</head>
<body>
    <div id="backup">
        <form action="put.php" method="post">
            <p id="form">
                <textarea name="script"><?php 

$filename = '/pfad/zum/script.sh';

if (is_readable($filename)) {
    $handle = fopen ($filename, "r");
    $contents = fread ($handle, filesize ($filename));
    echo $contents;
    fclose ($handle);
}
else {
    echo 'Die Datei '.$filename.' ist nicht schreibbar!.';
}

             ?></textarea>
                <br />
                <input type="submit" name="PushButton" value="Save" />
            </p>
        </form>
    </div>
</body>
</html>
zum Speichern

Code:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <title>Irgendwas</title>
</head>
<body>
    <div id="result">

<?php

$filename = '/pfad/zum/script.sh';
$somecontent = $_POST['script']; //Ich weiß, unsicher!

if (is_writable($filename)) {

    if (!$handle = fopen($filename, "a")) {
        echo 'Kann die Datei'.$filename.'nicht öffnen';
        exit;
    }

    if (!fwrite($handle, $somecontent)) {
        echo 'Kann in die Datei'.$filename.' nicht schreiben';
        exit;
    }

    echo 'Fertig, in Datei '.$filename.' wurde '.$somecontent.' geschrieben';
    fclose($handle);

}
else {
    echo 'Die Datei '.$filename.' ist nicht schreibbar!.';
}

?>

    </div>
</body>
</html>
 

Ähnliche Themen

Shell Script mit PHP

Jaunty + Zend + Gdata + xampp

VirtualHosts laufen nicht.

Zurück
Oben