Forum Linux.debian/ubuntu Lenny: apache2: public_html: script

Posté par  (site web personnel) .
Étiquettes : aucune
0
29
oct.
2009
Bonjour,

tous les utiisateurs crées sur mon système ont leur page personnelle http://monServeur/~utilisateur.
A la création d'un utilisateur, le dossier public_html est automatiquement crée avec une page index.php. Je voudrais, pour chaque utilisateur, afficher sur cette page index.php, les informations saisies (dans le fichier /etc/passwd) sur cet utilisateur (nom complet, adresse, ...) lors de la création de son compte. Je présume qu'il faut utiliser les variables d'environnement de linux, dans la page index.php?

Voici ce que j'ai fait:

myadduser.sh

#!/bin/bash
adduser $1
cat /etc/skel/public_html/index.php | sed -e s/USER/$1 >/home/$1/public_html/index.php


index.php


<?php
echo "Bienvenue sur l'espace personnel de USER"
?>


et voici ce que j'obtiens à l'écran:

Bienvenue sur l'espace personnel de USER


En lieu et place de "USER" à l'écran, j'espérais obtenir le nom d'utilisateur (Login) du propriétaire de la page. Quelqu'un a t'il la solution? Merci.
Merci
  • # cut ? awk ?

    Posté par  (site web personnel) . Évalué à 0.

    Tout est dans le titre.

    Système - Réseau - Sécurité Open Source - Ouvert à de nouvelles opportunités

  • # bizarre ton sed

    Posté par  . Évalué à 1.

    Dans ton script shell, met :
    sed -i "s/USER/$1/" /home/$1/public_html/index.php

    Si tu voulais mettre le prénom + nom tel que dans /etc/passwd tu pourrais faire :
    sed -i "s;USER;$(grep "^$LOGNAME:" /etc/passwd | cut -d : -f 5 | cut -d , -f 1);" /home/$1/public_html/index.php
    • [^] # Re: bizarre ton sed

      Posté par  . Évalué à 1.

      Pardon, je suis allé un peu vite dans mon copier-coller. Le deuxième sed aurait dû être :
      sed -i "s;USER;$(grep "^$1:" /etc/passwd | cut -d : -f 5 | cut -d , -f 1);" /home/$1/public_html/index.php

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.