|
|
|
|
Bonjour,
j'aurais une question à poser concernant les variables dans les shell script
en fait pour faire simple, avant d'intégrer le principe dans un autre script qui fait à peu près 300 lignes pour le moment (il en fera sûrement moins après modularisation)
En fait j'aimerais rendre possible ceci :
utiliser le paramètre du script dans une fonction de manière plus propre que la vieille feinte que j'ai imaginé.
Voici le script
#!/bin/bash
# VARIABLES
scr1=$1
scr2=$2
scr3=$3
# FONCTIONS
VerifText()
{
echo "param 1 $1"
echo "recup du param 1 du script ?"
echo $1
return 12
}
fMainScript()
{
echo "Paramètre 1 du script : $1 feinte 1 $scr1"
echo "Paramètre 2 du script : $2 feinte 2 $scr2"
echo "Paramètre 3 du script : $3 feinte 3 $scr3"
VerifText "Essai"
}
# SCRIPT
if [ $# -lt 3 ]
then
echo "Usage : CMD \$1 \$2 \$3"
echo $1 $2 $3
else
fMainScript
fi
$ ./tryfuncs.sh tata titi toto Paramètre 1 du script : feinte 1 tata Paramètre 2 du script : feinte 2 titi Paramètre 3 du script : feinte 3 toto param 1 Essai recup du param 1 du script ? Essai
Configuration: Linux Firefox 3.0.1
Salut,
[tmpfs]$ cat emino.sh
#!/bin/bash
# VARIABLES
#scr1=$1
#scr2=$2
#scr3=$3
# FONCTIONS
VerifText()
{
echo "param 2 $2"
echo "recup du param 1 du script ?"
echo $1
return 12
}
fMainScript()
{
echo "Paramètre 1 du script : $1"
echo "Paramètre 2 du script : $2"
echo "Paramètre 3 du script : $3"
VerifText $1 "Essai"
}
# SCRIPT
if [ $# -lt 3 ]
then
echo "Usage : CMD \$1 \$2 \$3"
echo $1 $2 $3
else
fMainScript $1 $2 $3
fi
[tmpfs]$ ./emino.sh tata toto titi
Paramètre 1 du script : tata
Paramètre 2 du script : toto
Paramètre 3 du script : titi
param 2 Essai
recup du param 1 du script ?
tata
[tmpfs]$;-))
$ man woman Il n'y a pas de page de manuel pour woman. |
Je vais l'essayer plus tard mais je ne vois pas grand chose de modifié.
funcCheminFichier()
{
echo "Sauvegarde de $1"
cp $1 $1.bak
}
funcCheminFichier /etc/init.d/vsftpd
et à l'appel
Normalement je diffuserais ce script plus tard pour aider les padawanz, mais bon faudra quand même avoir un minimum de connaissance donc ça fera peut-être gagner un peu de temps à certains admins... :) Oh que j'aime mon taffe ! =D J'ai un autre souci que je soumettrais plus tard.
|
Re-
jp@debian:~/tmpfs ssh$ cat foo.sh
#! /bin/bash
# DETECTION DES EDITEURS PARMI CEUX CHOISIS #
###############################################################################
# Vérification des éditeurs installés
EDITEUR=""
for name in gedit vim nano jed
do
dpkg -l "$name" | grep ii >/dev/null
if [ $? -eq 0 ]
then
echo "$name est installé."
EDITEUR="$EDITEUR $name"
TABLEAU=( $EDITEUR )
else
echo "$name n'est pas installé. Voulez-vous l'installer ? [o/N]"
instED="N"
read instED
if [ "$instED" = "o" ]
then
echo "Installation de $name..."
echo "Veuillez patienter..."
echo "apt-get install $name >> $INSTLOG 2>/dev/null"
EDITEUR="$EDITEUR $name"
TABLEAU=( $EDITEUR )
fi
fi
done
echo
echo "Quel éditeur voulez-vous utiliser pour éditer le fichier de configuration ?"
echo
i=1
for nom in ${TABLEAU[@]}
do echo "$i - $nom"
i=$((i+1))
done
read choix
echo
echo "L'éditeur utilisé sera ${TABLEAU[$((choix-1))]}"
jp@debian:~/tmpfs ssh$ ./foo.sh
gedit est installé.
vim est installé.
nano est installé.
Aucun paquet ne correspond à jed.
jed n'est pas installé. Voulez-vous l'installer ? [o/N]
o
Installation de jed...
Veuillez patienter...
apt-get install jed >> 2>/dev/null
Quel éditeur voulez-vous utiliser pour éditer le fichier de configuration ?
1 - gedit
2 - vim
3 - nano
4 - jed
3
L'éditeur utilisé sera nano
jp@debian:~/tmpfs ssh$;-))
$ man woman Il n'y a pas de page de manuel pour woman.
|