Bonjour.
Je me suis posé ce pb trivial et puis je me suis aperçu que je ne trouvais
pas cela si simple . J'ai utilisé une variable array.
Voila ce que j'ai fait(!)
#!/bin/bash
#transforme en s une duree donnee en H M S ex 2H35M45S
#utilise un tableau $table
if [ 0 -eq $# ]
then echo " entrez une duree ex 2H35M45S "
else
declare -a table
for j in 1 2 3
do
x=$(echo $1|sed 's/[A-Z]/:/g'|cut -d : -f$j)
table[j]=$x
done
temps=$((${table[1]}*3600+${table[2]}*60+${table[3]}))
echo $temps
fi
Je voulais indexer une variable par les index de boucle:
for j in 1 2 3
do
x$j=$(echo $1|sed 's/[A-Z]/:/g'|cut -d : -f$j )etc.
Apparemment l'affectation ne fonctionne pas.
--
cordialement jean-jacques.
Ce message a été écrit sur un système libre mandriva
"Tant que l'homme sera mortel, il ne pourra pas être totalement
décontracté ."
Woody Allen.
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Luc.Habert.00__arjf
jean-jacques :
Bonjour. Je me suis posé ce pb trivial et puis je me suis aperçu que je ne trouvais pas cela si simple . J'ai utilisé une variable array. Voila ce que j'ai fait(!) #!/bin/bash #transforme en s une duree donnee en H M S ex 2H35M45S #utilise un tableau $table
OLDIFS=$IFS IFS=HMS set -f set -- $1 set +f IFS=$OLDIFS SECONDES=`expr "$1" '*' 3600 + "$2" '*' 60 + "$3"`
Je voulais indexer une variable par les index de boucle: for j in 1 2 3 do x$j=$(echo $1|sed 's/[A-Z]/:/g'|cut -d : -f$j )etc. Apparemment l'affectation ne fonctionne pas.
Bonjour.
Je me suis posé ce pb trivial et puis je me suis aperçu que je ne trouvais
pas cela si simple . J'ai utilisé une variable array.
Voila ce que j'ai fait(!)
#!/bin/bash
#transforme en s une duree donnee en H M S ex 2H35M45S
#utilise un tableau $table
OLDIFS=$IFS
IFS=HMS
set -f
set -- $1
set +f
IFS=$OLDIFS
SECONDES=`expr "$1" '*' 3600 + "$2" '*' 60 + "$3"`
Je voulais indexer une variable par les index de boucle:
for j in 1 2 3
do
x$j=$(echo $1|sed 's/[A-Z]/:/g'|cut -d : -f$j )etc.
Apparemment l'affectation ne fonctionne pas.
Bonjour. Je me suis posé ce pb trivial et puis je me suis aperçu que je ne trouvais pas cela si simple . J'ai utilisé une variable array. Voila ce que j'ai fait(!) #!/bin/bash #transforme en s une duree donnee en H M S ex 2H35M45S #utilise un tableau $table
OLDIFS=$IFS IFS=HMS set -f set -- $1 set +f IFS=$OLDIFS SECONDES=`expr "$1" '*' 3600 + "$2" '*' 60 + "$3"`
Je voulais indexer une variable par les index de boucle: for j in 1 2 3 do x$j=$(echo $1|sed 's/[A-Z]/:/g'|cut -d : -f$j )etc. Apparemment l'affectation ne fonctionne pas.
Bonjour. Je me suis posé ce pb trivial et puis je me suis aperçu que je ne trouvais pas cela si simple . J'ai utilisé une variable array. Voila ce que j'ai fait(!) #!/bin/bash #transforme en s une duree donnee en H M S ex 2H35M45S #utilise un tableau $table
Quel est l'interet de programmer en bash (ou ksh, zsh...)?
Pas besoin de "#!" et utiliser une syntaxe standard.
Et ne pas oublier qu'un shell est avant tout un interpreteur de commande. Le boulot doit etre fait par les commandes. Si on fait faire le boulot au shell, alors autant utiliser un vrai language de programmation. En particulier l'utilisation d'array est un signe qu'on part dans la mauvaise direction.
-- Stéphane
2007-06-24, 19:47(+02), jean-jacques:
Bonjour.
Je me suis posé ce pb trivial et puis je me suis aperçu que je ne trouvais
pas cela si simple . J'ai utilisé une variable array.
Voila ce que j'ai fait(!)
#!/bin/bash
#transforme en s une duree donnee en H M S ex 2H35M45S
#utilise un tableau $table
Quel est l'interet de programmer en bash (ou ksh, zsh...)?
Pas besoin de "#!" et utiliser une syntaxe standard.
Et ne pas oublier qu'un shell est avant tout un interpreteur de
commande. Le boulot doit etre fait par les commandes. Si on fait
faire le boulot au shell, alors autant utiliser un vrai language
de programmation. En particulier l'utilisation d'array est un
signe qu'on part dans la mauvaise direction.
Bonjour. Je me suis posé ce pb trivial et puis je me suis aperçu que je ne trouvais pas cela si simple . J'ai utilisé une variable array. Voila ce que j'ai fait(!) #!/bin/bash #transforme en s une duree donnee en H M S ex 2H35M45S #utilise un tableau $table
Quel est l'interet de programmer en bash (ou ksh, zsh...)?
Pas besoin de "#!" et utiliser une syntaxe standard.
Et ne pas oublier qu'un shell est avant tout un interpreteur de commande. Le boulot doit etre fait par les commandes. Si on fait faire le boulot au shell, alors autant utiliser un vrai language de programmation. En particulier l'utilisation d'array est un signe qu'on part dans la mauvaise direction.
-- Stéphane
jean-jacques
Luc Habert wrote:
jean-jacques :
mais c'est une horreur. Merci à vous deux.
Je vais étudier vos réponses! Il y a loin de la coupe aux lèvres. :-((
-- cordialement jean-jacques. Ce message a été écrit sur un système libre mandriva "Tant que l'homme sera mortel, il ne pourra pas être totalement décontracté ." Woody Allen.
Luc Habert wrote:
jean-jacques :
mais c'est une horreur.
Merci à vous deux.
Je vais étudier vos réponses!
Il y a loin de la coupe aux lèvres. :-((
--
cordialement jean-jacques.
Ce message a été écrit sur un système libre mandriva
"Tant que l'homme sera mortel, il ne pourra pas être totalement
décontracté ."
Woody Allen.
Je vais étudier vos réponses! Il y a loin de la coupe aux lèvres. :-((
-- cordialement jean-jacques. Ce message a été écrit sur un système libre mandriva "Tant que l'homme sera mortel, il ne pourra pas être totalement décontracté ." Woody Allen.