Précédent   Forum des professionnels en informatique > Systèmes > Linux > Applications > Shell
Shell Vos questions sur l'utilisation des commandes shell
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 19/09/2011, 16h54   #1
Futur Membre du Club
 
Pierre-Antoine Errard
Inscription : janvier 2011
Messages : 57
Détails du profil
Informations personnelles :
Nom : Pierre-Antoine Errard

Informations forums :
Inscription : janvier 2011
Messages : 57
Points : 19
Points : 19
Par défaut shell + mise en forme + sortie html

Salut !

j'essaie de tafer sur un script en shell qui va me prélever des informations dans mon httpd.conf (je suis sous centos, et apache2.2 au cas ou)

donc je prends que les infos dont j'ai besoin avec un script et je stocke tout dans un autre fichier et c'est ce dernier fichier que j'ai besoin de traiter plus précisément.

Dedans il contient tous les ServerName et ServerAlias de l'httpd.conf

j'ai donc une liste qui ressemble à ça :

Citation:
ServerName site1.fr
ServerName site2.fr
ServerAlias www.site2.fr
ServerName site3.fr
etc...

ce que j'aimerais réussir à faire, c'est d'afficher cette liste de façon propre en dans un fichier html

en sachant qu'il faudrait que j'affiche chaque occurrence ServerName, mais aussi les ServerAlias en sachant qu'un ServerAlias est lié avec un ServerName et donc faudra plus afficher le ServerAlias et non le ServerName et qu'après, chaque nom de domaine on puisse cliquer dessus depuis le fichier qui aura été généré en html


je me posais juste une question (ayant aucune connaissance en php) est-ce ça n'irait pas plus vite de traiter mon fichier avec du php que de s’embêter avec du shell ?
tetzispa est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/09/2011, 19h00   #2
Expert Confirmé Sénior
 
Avatar de Sve@r
 
Homme Frédéric
Ingénieur développement logiciels
Inscription : février 2006
Messages : 3 055
Détails du profil
Informations personnelles :
Nom : Homme Frédéric
Âge : 44
Localisation : France, Oise (Picardie)

Informations professionnelles :
Activité : Ingénieur développement logiciels
Secteur : Aéronautique - Marine - Espace - Armement

Informations forums :
Inscription : février 2006
Messages : 3 055
Points : 4 934
Points : 4 934
Citation:
Envoyé par tetzispa Voir le message
Salut !

j'essaie de tafer sur un script en shell qui va me prélever des informations dans mon httpd.conf (je suis sous centos, et apache2.2 au cas ou)

donc je prends que les infos dont j'ai besoin avec un script et je stocke tout dans un autre fichier et c'est ce dernier fichier que j'ai besoin de traiter plus précisément.

Dedans il contient tous les ServerName et ServerAlias de l'httpd.conf

j'ai donc une liste qui ressemble à ça :
Code :
1
2
3
4
ServerName site1.fr
ServerName site2.fr
ServerAlias www.site2.fr
ServerName site3.fr
Salut

Si ton fichier généré a pour vocation d'être utilisé par un outil automatisé, je conseillerais plutôt de l'écrire à la norme Unix, style
Code :
1
2
3
4
ServerName:site1.fr
ServerName:site2.fr
ServerAlias:www.site2.fr
ServerName:site3.fr
Ce n'est qu'un détail mais ça évite parfois les ennuis d'avoir à gérer un champ contenant un espace (évidemment si ton champ contient un ":" on retrouve le même pb )

Citation:
Envoyé par tetzispa Voir le message
ce que j'aimerais réussir à faire, c'est d'afficher cette liste de façon propre en dans un fichier html
Code bash :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
html()
{
    echo "<html>"
    echo "<head></head>"
    echo "<body>"
 
    cat $1 |while read ligne
    do
        champ1=`echo "$ligne" |cut -f1 -d:`
        champ2=`echo "$ligne" |cut -f2 -d:`
        echo "<u>$champ1</u>: $champ2<br>"
    done
 
    echo "</body>"
    echo "</html>"
}
 
html fichier_input >fichier.html

Citation:
Envoyé par tetzispa Voir le message
en sachant qu'il faudrait que j'affiche chaque occurrence ServerName, mais aussi les ServerAlias en sachant qu'un ServerAlias est lié avec un ServerName et donc faudra plus afficher le ServerAlias et non le ServerName et qu'après, chaque nom de domaine on puisse cliquer dessus depuis le fichier qui aura été généré en html
Là ça devient plus compliqué. Parce qu'il te faut, quand tu lis certaines lignes, mémoriser certaines infos pour les ressortir quand tu arrives à d'autres lignes. Ce n'est pas impossible à faire en shell mais c'est un peu lourd.
Alors que d'autres langages plus évolués comme Python offrent plus d'outils appropriés à ce genre de travail...

Citation:
Envoyé par tetzispa Voir le message
je me posais juste une question (ayant aucune connaissance en php) est-ce ça n'irait pas plus vite de traiter mon fichier avec du php que de s’embêter avec du shell ?
Voir mon paragraphe précédent. Effectivement php possède lui-aussi des outils plus évolués que le shell...
__________________
Vous ne pouvez pas apporter la prospérité au pauvre en la retirant au riche.
Tout ce qu'un individu reçoit sans rien faire pour l'obtenir, un autre individu a dû travailler pour le produire sans en tirer profit.
Tout Pouvoir ne peut distribuer aux uns que ce qu'il a préalablement confisqué à d'autres car on n'accroît pas les biens en les divisant.
Quand la moitié d'un peuple croit qu'il ne sert à rien de faire des efforts car l'autre moitié les fera pour elle, et quand cette dernière moitié se dit qu'il ne sert à rien d'en faire car ils bénéficieront à d'autres, cela s'appelle le déclin et la fin d'une nation.
Dr. Adrian Rogers, 1931
Sve@r est déconnecté   Envoyer un message privé Réponse avec citation 20
Vieux 19/09/2011, 21h56   #3
Futur Membre du Club
 
Pierre-Antoine Errard
Inscription : janvier 2011
Messages : 57
Détails du profil
Informations personnelles :
Nom : Pierre-Antoine Errard

Informations forums :
Inscription : janvier 2011
Messages : 57
Points : 19
Points : 19
ah merci pour le début d'aide

bon faut savoir que niveau langage de prog' mis à part le shell (et encore faut pas pousser super loin ) je suis à la ramasse vu que j'en fais pas (malheureusement) en cours, donc je peux me trouver bloqué (comme ici)

je comprends très bien aussi le coup du délimiteur ":" pour mieux traiter les infos (donc ça sera utile pour coder en php)

je testerai ça, et puis je vais bah je vais voir côté php et passer du temps

je tiens au jus et encore merci !
tetzispa est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 03h22.


 
 
 
 
Partenaires

Hébergement Web