Anzeige:
Ergebnis 1 bis 5 von 5

Thema: Perl, Shell-Skript oder Webmin-Addon? User und Verzeichnisse auf Linux anlegen ...

  1. #1
    Registrierter Benutzer Avatar von ClausVB
    Registriert seit
    05.08.2005
    Ort
    NRW - Deutschland
    Beiträge
    106

    Question Perl, Shell-Skript oder Webmin-Addon? User und Verzeichnisse auf Linux anlegen ...

    Hallo!

    Ich habe für eine Domain-Installation mehrere Dinge zu machen:
    - Pfade erstellen
    - DNS
    - Apache
    - Statistiken (CONF-Datei)
    - Logrotate
    - MySQL
    - .htaccess

    das dauert manuell mit Tests ca. 1 bis 2 Stunden.

    Die ganzen MKDIR in ein Skript zu tun, war nicht das Problem, danach muss aber eine Gruppe und User erstellt werden und in Abhängigkeit davon muss der
    chown USER.GRUPPE /home/HOMEDIR
    gemacht werden.

    Welche Variante würdet Ihr nehmen:
    - fertiges Skript (wenn ja welches?)
    - useradd per Shell-Skript
    - user-lib.pl (vom Webmin) bzw. Perl

    Code:
    li101s03:/usr/libexec/webmin/useradmin # ls -lah *user*
    -rwxr-xr-x  1 root root 5.0K Nov 29 23:38 delete_user.cgi
    -rwxr-xr-x  1 root root  23K Nov 29 23:38 edit_user.cgi
    -rwxr-xr-x  1 root root 7.3K Nov 29 23:38 mass_delete_user.cgi
    -rwxr-xr-x  1 root root 4.8K Nov 29 23:38 my_user_chooser.cgi
    -rwxr-xr-x  1 root root  18K Nov 29 23:38 save_user.cgi
    -rwxr-xr-x  1 root root 1.1K Nov 29 23:38 search_user.cgi
    -rw-r--r--  1 root root  52K Nov 29 23:35 user-lib.pl
    li101s03:/usr/libexec/webmin/useradmin #
    Ich überlege auch ein interaktives Skript auf Kommandozeile in Perl zu schreiben, die Problematik bleibt aber. Generell sollte man doch alles, was man per Shell-Skript machen kann, auch mit Perl machen können, oder? Mit PHP kenne ich mich sehr gut aus und die Webmin-Module sehen übersichtlich aus. Hat jemand da Erfahrung oder ein Tutorial?

    Hintergrund: Ich habe sowohl per Shell-Skript als auch Perl nur kleine Skripte (ca. 20 bis 50 Zeilen) geschrieben. Ich will jetzt einen Weg gehen, der auch einfach gewartet und erweitert werden kann. Shell-Skript ist für mich manchmal kryptisch mit dem "done" und ";" aber ich würde auch das machen.

    Gruß
    Claus

  2. #2
    Registrierter Benutzer Avatar von SeeksTheMoon
    Registriert seit
    22.02.2002
    Beiträge
    762
    Wenn Du viele Daten zu bearbeiten hast, dann ist ein Shellscript schlecht geeignet, weil Schleifen+Array-Arbeiten mit der Bash enorm langsam sind.
    Perl ist da wesentlich schneller und auch flexibler, z.B. Datenbankanbindung per DBI, teilweise einfacher als diverse Shellkonstrukte mit cut/grep/awk/sed und Arrays/Hashes sind in der Bash nur schlecht implementiert oder nicht vorhanden.
    Statistiken kann man sich in Perl auf verschiedene Weise ausgeben/auswerten lassen, z.B. mit GD.

    => Du kannst mit Perl mehr machen als mit der Shell

    (Hmm, wenn ein Shellscript aber schon kryptisch ist... naja: kommt immer auf den Programmierer an, was er für Code erstellt; mit Perl lassen sich wüste Dinge schreiben).

    Es gibt auch Tools für größere useradds, z.B. superadduser, aber ich hab mit sowas noch nie gearbeitet.
    I haven't lost my mind - It's somewhere on a backup-disc

  3. #3
    Registrierter Benutzer Avatar von ClausVB
    Registriert seit
    05.08.2005
    Ort
    NRW - Deutschland
    Beiträge
    106
    Danke für Deine Antwort.

    Ich habe es jetzt (auch auf Deinen Rat hin) mit Perl angefangen. Ich bekomme auch die Verzeichnisse und User erstellt.

    Ich finde aber auf Anhieb keine Funktion, die aus
    www.domain-xy.de
    ein
    www_domain-xy_de
    macht. (Bei PHP geht das mit "substr()" :-).

    Ich google gleich mal, aber wenn jemand eine spontane Idee hat, wäre ich für Rückmeldungen dankbar.

    Gruß
    Claus
    Geändert von ClausVB (18-03-2006 um 12:56 Uhr)

  4. #4
    Registrierter Benutzer
    Registriert seit
    19.08.2004
    Beiträge
    404
    substr() = substring

    Diese Funktion gibt es in Perl auch, sie gibt Dir jeweils einen Teilstring zurück. Zum BEispiel ab dem 5 Zeichen die nächsten 10 Zeichen. Ich vermute mal in PHP macht die Funktion das gleiche.

    Ein regulärer Ausdruck könnte schon eher das sein, was Du suchst.

    Code:
      $var =~ s/\./_/g;
    wandelt Dir alle '.' in $var in '_' um...

  5. #5
    Registrierter Benutzer Avatar von ClausVB
    Registriert seit
    05.08.2005
    Ort
    NRW - Deutschland
    Beiträge
    106
    Funktioniert, tausend Dank!

    Gruß
    Claus

    PS: Sorry wegen "substr", ich meinte "str_replace", aber ich bin so tief in der Shell-Programmierung, dass ich im Moment nicht mehr klar geradeausdenken kann ... sorry nochmal.
    Geändert von ClausVB (18-03-2006 um 16:48 Uhr)

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •