Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1706 connectés 

  FORUM HardWare.fr
  Programmation
  Shell/Batch

  problème script shell en bash!

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

problème script shell en bash!

n°1253605
bibundom
Posté le 26-11-2005 à 08:30:50  profilanswer
 

Bonjour voila j'ai un script shell en bash a faire j'aurai voulu savoir si vous pouviez me depanné !
je cherche la fonction qui permette d'afficher une suite de nombre dont l'epace entre chaque nombre serait de 5!
Merci d'avance

mood
Publicité
Posté le 26-11-2005 à 08:30:50  profilanswer
 

n°1253606
Elmoricq
Modérateur
Posté le 26-11-2005 à 09:04:35  profilanswer
 

Pour une sortie formatée : printf

n°1256079
Sve@r
Posté le 30-11-2005 à 15:39:13  profilanswer
 

Elmoricq a écrit :

Pour une sortie formatée : printf


En Bourne Again SHell ???
 

bibundom a écrit :

Bonjour voila j'ai un script shell en bash a faire j'aurai voulu savoir si vous pouviez me depanné !
je cherche la fonction qui permette d'afficher une suite de nombre dont l'epace entre chaque nombre serait de 5!
Merci d'avance


 

# Fonction qui affiche des éléments espacés de "n" espaces
affich()
{
    (
          # Récupération de "n"
          n=$1; shift
 
          # Boucle sur les nombres à afficher
          for nb
          do
              # Affichage du nombre
              echo -n "$nb"
 
              # Affichage des "n" espaces
              i=0
              while test $i -lt $n
              do
                   echo -n " "
                   i=`expr $i + 1`
              done
         done
     )
}


 
Comment tu t'en sers ?
1) tu recopie le code de cette fonction en début de ton script shell
2) quand tu veux afficher tes nombres avec 'x' espaces, tu appeles:
affich x 1 2 3 4 5
'x' étant évidemment le nombre d'espaces que tu veux
 
Les parenthèses vides en début et fin de fonction ont une importance => elles permettent de "localiser" les variables dans la fonction. Si par exemple dans le script utilise une variable "i" ou "n", cette variable ne sera pas altérée lors de l'appel à "affich" qui utilise aussi des variables nommées "i" et "n".

Message cité 1 fois
Message édité par Sve@r le 30-11-2005 à 15:55:33

---------------
Vous ne pouvez pas apporter la prospérité au pauvre en la retirant au riche.
n°1256356
matafan
Posté le 30-11-2005 à 20:37:15  profilanswer
 

Sve@r a écrit :

En Bourne Again SHell ???


Oui, la plupart des systemes POSIX on une commande "printf" qui marche un peu comme le printf du C. man 1 printf.
 
Exemple :

/home/nicolas $ printf '|%12s|%-12s|\n' right left
|       right|left        |


Message édité par matafan le 30-11-2005 à 20:42:26

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Shell/Batch

  problème script shell en bash!

 

Sujets relatifs
probleme phpprobleme height: 100%
Script qui rempli un champ de formulaire sur une autre pageprobleme de CSS entre IE6 et FF
Problème avec un softprobleme de mapping
Probleme de "realtime" avec onclipevent(enterFrame)[PHP] Probleme de compteur de visite et de cookie
Problème de connection à un pc distant avec WMIProbléme de menu PHP
Plus de sujets relatifs à : problème script shell en bash!


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR