Convertir des ligne de commande en exécutable
Résolu
Jacktherip
Messages postés
3
Statut
Membre
-
Polux31 Messages postés 7219 Statut Membre -
Polux31 Messages postés 7219 Statut Membre -
Bonjour à tous,
Voila j'ai fait un petit shell qui permet de faire a partir d'un dossier photo une page web permettant d'afficher les photo dans des tableau avec une petite description (création de fichier index.html dans chaque dossier. Le seul soucis c'est que pour l'executer il faut le rentrer en ligne de commande et j'aimerai eviter de faire cela à chaque fois.
les ligne de commande sont à rentré sous unix et j'aimerais l'éxécuter sous windows ! Est-ce que c'est possible?
voici la ligne de commande:
et programme.sh contient:
Je vous remercie par avance.
Cordialement
Jacktherip
Voila j'ai fait un petit shell qui permet de faire a partir d'un dossier photo une page web permettant d'afficher les photo dans des tableau avec une petite description (création de fichier index.html dans chaque dossier. Le seul soucis c'est que pour l'executer il faut le rentrer en ligne de commande et j'aimerai eviter de faire cela à chaque fois.
les ligne de commande sont à rentré sous unix et j'aimerais l'éxécuter sous windows ! Est-ce que c'est possible?
voici la ligne de commande:
. Programme.sh [Dossier_Photo]
et programme.sh contient:
#!/bin/bash
#
#Programme.sh
#
#
#On déclare les variables utilisées par le script
REP=$1
ARBORES=$1
TITRE_PRNCIPAL=`echo $1 | awk 'BEGIN{FS="/"} {print $NF}'` #On met dans cette variable le titre du dossier
if [ $# -ne 1 ] #Vérification du nombre d'arguments
then
echo "Erreur de création au niveau du nombre d'arguments"
echo "Consulter la commande -help"
else
case $1 in #Création du fichier help
"-help")
echo "Pour exécuter le script il suffit de se mettre dans le répertoire"
echo " "
echo "contenant le fichier et les photos sous linux puis taper la ligne de commande:"
echo ". Programme.sh [Dossier_Photo]"
echo "et lorsque l'exécutable affiche Création Terminer, allez dans le"
echo "répertoire des photos et cliquez sur la page html nommé index.html."
;;
*)
#Regarde si ce répertoire est un dossier
if -d $REP #Vérifie que le répertoire selectionnée est bien un dossier
then
#Exploration des répertoires
for ELEM in `find $REP -type d`; #Recherche les dossiers dans le répertoire
do
FICHIER=$ELEM/index.html
touch $FICHIER #Crée les fichiers Index.html dans chaque répertoire
#On remplis les fichiers index. html
TITRE=`echo $ELEM | awk 'BEGIN{FS="/"} {print $NF}'`
#Insertion des balises html dans le fichier Index.html pour le début de la page web
echo -ne "<html>\n<head>\n<title>Galerie photos : $TITRE</title>\n</head>\n\n<body>\n\n<h1><u>$TITRE</u></h1><h4>$ELEM</h4>\n\n\n<hr color=\"blue\" align=left>\n<br><UL compact type=circle>" > $FICHIER
for SOUS_REP in `ls $ELEM`; #Recherche de tous les répertoire ou fichiers présent
do
#Création lien avec les dossiers
if -d $ELEM/$SOUS_REP
then
TITRE_R=`echo $SOUS_REP | awk 'BEGIN{FS="/"} {print $NF}'` #On prend le nom du dossier dans le sous répertoire afin de l'afficher
B=${TITRE_R:0:1}
B=`echo $B | tr a-z A-Z` #Transformation de la premiére lettre en majuscule des dossiers
TITRE_R="$B""${TITRE_R:1}"
TITRE_R=`echo $TITRE_R | tr _ " "`
echo -ne "<LI> <a href=\"$SOUS_REP/index.html\"> -$TITRE_R- </a> </LI>\n" >> $FICHIER #Edition des liens dans la page html
fi
done
#Fin de la page html
echo -e "</UL>\n" >> $FICHIER
#Création du tableau
echo -e "<CENTER>\n <TABLE BORDER=\"4\" bordercolor=\"blue\" bordercolordark=\"aqua\" CELLPADING=\"500\" CELLSPACING=\"30\" >\n" >> $FICHIER
#Création des liens vers les images
for PHOT in `ls -a $ELEM`; #Recherche les photos
do
for EXT in "jpg" "gif" "jpeg" "bmp" "BMP" "JPG" "JPEG" "TIF" "tif" #Recherche les fichiers qui ont une extension d'une image
do
if ${PHOT##*.} == $EXT #Cherche les extentions
then
TITRE_PHOT=`echo $PHOT | awk 'BEGIN{FS="/"} {print $NF}'`
TITRE_PHOT=`echo $TITRE_PHOT | awk 'BEGIN{FS="."} {print $1}'`
ICO=`echo $TITRE_PHOT-ico.$EXT`
A=${TITRE_PHOT:0:1}
A=`echo $A | tr a-z A-Z` #Transformation de la premiére lettre en majuscule des photos
TITRE_PHOT="$A""${TITRE_PHOT:1}"
TITRE_PHOT=`echo $TITRE_PHOT | tr _ " "`
if $TITRE_PHOT != *-ico #Test si l'image est un icône
then
# Si j'ai un fichier .desc je prend le texte inscrit dans le fichier description, si le fichier n'existe pas je supprime l'extension
if -f $ELEM/$PHOT.desc
then
TITRE_PHOT=`cat $ELEM/$PHOT.desc` #Affichage du texte écrit dans le fichier description
fi
if -f $ELEM/$ICO #Regarde si une image se termine par -ico
then
echo -ne "<TR><TD><a href=\"$PHOT\" target=\"_blank\" > $TITRE_PHOT </a></TD>\n" >> $FICHIER #Création du lien html et affichage de l'image dans une nouvelle page
echo -ne "<TD ALIGN=\"center\" VALIGN=\"center\"> <a href=\"$PHOT\" target=\"_blank\"> <IMG SRC=\"$ICO\" align=\"center\" title=\"$TITRE_PHOT\"> </a></TD></TR>\n" >> $FICHIER #Affichage de l'image en icone dans le tableau
else
echo -ne "<TR><TD><a href=\"$PHOT\" target=\"_blank\" > $TITRE_PHOT </a></TD>\n" >> $FICHIER #Création du lien html et affichage de l'image dans une nouvelle page
echo -ne "<TD ALIGN=\"center\" VALIGN=\"center\"> <a href=\"$PHOT\" target=\"_blank\"> <IMG SRC=\"$PHOT\" WIDTH=\"100\" HEIGHT=\"100\" align=\"center\" title=\"$TITRE_PHOT\"> </a></TD></TR>\n" >> $FICHIER #Affichage de l'image en icone dans le tableau
fi
fi
fi
done
done
echo -e "</TABLE><br>\n" >> $FICHIER #Création des balises de la fin du tableau
echo -e "\n<hr color=\"blue\" align=left>\n<br>" >> $FICHIER #Création de le fin des pages html
#Crée les liens retours
if $ELEM != $ARBORES
then
RET=`echo $ELEM | awk 'BEGIN{FS="/"} {print $(NF-1)}'` #Permet d'afficher le nom du dossier précedent pour le retour vers
echo -e "<a href=\"../index.html\"> Retour vers [$RET] </a>\n<br>\n</body>\n<br>\n</html>" >> $FICHIER #Création du lien retour
else
echo -e "\n</body>\n<br>\n</html>" >> $FICHIER #Fin de la page html
fi
done
echo "Création terminée"
else
echo "Erreur de création"
echo "Consulter la commande -help"
fi
;;
esac
shift
fi
Je vous remercie par avance.
Cordialement
Jacktherip
A voir également:
- Convertir des ligne de commande en exécutable
- Invite de commande - Guide
- Partage de photos en ligne - Guide
- Mètre en ligne - Guide
- Formulaire en ligne de meta - Guide
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
2 réponses
Bonjour,
il te suffit simplement detélécharger un emulateur linux sous windows.
http://www.cygwin.com c'est un débogueur que j'utilise. Il est très simple d'utilisation. -> il emule une fenètre shell dans laquel tu pourras executer ton programme par la syntaxe suivante: (tout comme sous une OS linux ou Unix les commandes sont identiques)
/"chmin du fichier".sh
et ton fichier se lance
remarque 1: lorsque tu va saisir le PATH de ton fichier regarde bien ou tu te trouve avec la commande pwd.
astuce: ouvre une autre fenètre et lances y ton scripte à l'interieur -> startx&
tu peux également trouver un autre type d'émulateur: VMWareplayer ou Virtualbox pour lesquel il faut se tourner vers des experts pour obtenir + d'info.
Tania
il te suffit simplement detélécharger un emulateur linux sous windows.
http://www.cygwin.com c'est un débogueur que j'utilise. Il est très simple d'utilisation. -> il emule une fenètre shell dans laquel tu pourras executer ton programme par la syntaxe suivante: (tout comme sous une OS linux ou Unix les commandes sont identiques)
/"chmin du fichier".sh
et ton fichier se lance
remarque 1: lorsque tu va saisir le PATH de ton fichier regarde bien ou tu te trouve avec la commande pwd.
astuce: ouvre une autre fenètre et lances y ton scripte à l'interieur -> startx&
tu peux également trouver un autre type d'émulateur: VMWareplayer ou Virtualbox pour lesquel il faut se tourner vers des experts pour obtenir + d'info.
Tania