un peu de bash
2 participants
Ceibxl :: Discussion :: Cours
Page 1 sur 1
un peu de bash
Plop, je fais un script du genre :
./clg monProg monParam monAutreParam
monprog = un prog a compilé en C
monParam et monAutreParam = des parametre a filé si on veut que le programme soit executé apres la compil
Donc ce que je fais :
Le probleme vien au niveau de la concaténation des parametre pour l'execution ... j'ai aucune idée de la synthaxe a réaliser pour cte merde ... donc si qqun sait ^^
./clg monProg monParam monAutreParam
monprog = un prog a compilé en C
monParam et monAutreParam = des parametre a filé si on veut que le programme soit executé apres la compil
Donc ce que je fais :
- Code:
#!/bin/bash
maVar = ""
if [ $# = 0 ]
then
echo Utilisation : clg source [option]
else
gcc $1.c -o $1
if [ $? -eq 0 ]
then
echo Voulez-vous executer le programme [Y/N]
read yOrN
if [ $yOrN == "Y" ]
then
for arg in $*
do
maVar= "$arg"
done
# echo ./$maVar
./$maVar
fi
fi
fi
Le probleme vien au niveau de la concaténation des parametre pour l'execution ... j'ai aucune idée de la synthaxe a réaliser pour cte merde ... donc si qqun sait ^^
Sarko- Nombre de messages : 2134
Age : 36
Cercle : CEI tapette ²
Année Baptême : 2006
Date d'inscription : 10/07/2008
Re: un peu de bash
- Code:
arg=""
for a in $*
do
arg="$arg $a"
done
Sardine- Nombre de messages : 3703
Age : 33
Cercle : CEI
Année Baptême : 2008
Date d'inscription : 04/10/2008
Re: un peu de bash
erreur :
./clg: line 19: ./: is a directory
./clg: line 19: ./: is a directory
Sarko- Nombre de messages : 2134
Age : 36
Cercle : CEI tapette ²
Année Baptême : 2006
Date d'inscription : 10/07/2008
Re: un peu de bash
On dirait qu'il met un espace entre ./ et mCat enfaite
ca sinon arg contient bien la bonne chaine :
Voulez-vous executer le programme [Y/N]
Y
mCat mHead.c mWc.c
si je met le ./
Y
./ mCat mHead.c mWc.c
ca sinon arg contient bien la bonne chaine :
Voulez-vous executer le programme [Y/N]
Y
mCat mHead.c mWc.c
si je met le ./
Y
./ mCat mHead.c mWc.c
Dernière édition par Sarko le Ven 4 Juin - 12:50, édité 1 fois
Sarko- Nombre de messages : 2134
Age : 36
Cercle : CEI tapette ²
Année Baptême : 2006
Date d'inscription : 10/07/2008
Re: un peu de bash
Vire l'espace après l'égal là:
maVar= "$arg"
maVar= "$arg"
Sardine- Nombre de messages : 3703
Age : 33
Cercle : CEI
Année Baptême : 2008
Date d'inscription : 04/10/2008
Sarko- Nombre de messages : 2134
Age : 36
Cercle : CEI tapette ²
Année Baptême : 2006
Date d'inscription : 10/07/2008
Re: un peu de bash
- Code:
#!/bin/bash
if [ $# = 0 ]
then
echo Utilisation : clg source [option]
else
gcc $1.c -o $1
if [ $? -eq 0 ]
then
echo Voulez-vous executer le programme [Y/N]
read yOrN
if [ $yOrN == "Y" ]
then
arg=""
for a in $*
do
arg="$arg $a"
done
echo "./$arg"
fi
fi
fi
je remet le nouveau code
Sarko- Nombre de messages : 2134
Age : 36
Cercle : CEI tapette ²
Année Baptême : 2006
Date d'inscription : 10/07/2008
Ceibxl :: Discussion :: Cours
Page 1 sur 1
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum
|
|