The UNIX and Linux Forums  
Bonjour et bienvenu par les États-Unis à la UNIX et Linux Forums! Merci de votre visite et vous joindre à notre communauté mondiale.

Go Back   Les systèmes UNIX et Linux Forums > Top Forums > De programmation et de script Shell
.
google unix.com



De programmation et de script Shell Posez vos questions à propos de KSH, CSH, SH, BASH, PERL, PHP, SED, awk et d'autres scripts shell et les langages de script shell ici.

Plus d'UNIX et Linux Forum Sujets Vous trouverez peut-être utile
Fil Thread Starter Forum Réponses Last Post
Les paramètres de la boucle mgirinath De programmation et de script Shell 3 03-18-2008 10:20 AM
Urgent: Comparaison de deux chaînes en utilisant Si Loop Anji De programmation et de script Shell 2 01-09-2008 08:54 AM
Lire à partir d'un fichier et d'utiliser les chaînes dans une boucle xboxer21 De programmation et de script Shell 3 04-18-2006 04:30 PM
Comment faire pour concaténer deux chaînes de caractères ou de plusieurs chaînes de caractères dans une chaîne de caractères dans B-shell? fontana De programmation et de script Shell 2 08-26-2005 12:58 PM
la façon d'obtenir la même fonction en tout ou en boucle la boucle trynew De programmation et de script Shell 3 06-17-2002 12:09 PM

Closed Thread
English Japanese Spanish French German Portuguese Italian Dutch Swedish Russian Norwegian Hungarian Hebrew Danish Bulgarian Greek Powered by Powered by Google
 
LinkBack Thread Tools Recherche sur ce Thread Rate Thread Modes d'affichage
  #1 (permalink)  
Old 06-23-2006
kadishmj kadishmj is offline
Registered User
  
 

Join Date: Feb 2005
Messages: 11
Pour les boucles avec les chaînes de caractères comme paramètres

J'essaye de créer un script avec une boucle que des chaines de caractères en tant que paramètres. Certaines de ces chaînes ont espaces en eux, et je ne peux pas l'obtenir pour fonctionner correctement. Par exemple:

Code:
#!/bin/ksh

INFILE=snapshot.log
OUTFILE=summary.out

a="Lock waits"
b="Deadlocks detected"

for PARAM in ${a} ${b}
do
   /usr/bin/grep ${PARAM} ${INFILE} >> ${OUTFILE}
done
Je veux que la boucle à exécuter 2 fois, mais c'est l'exécution de 4 fois avec les valeurs suivantes pour PARAM:

1st pass - Lock
2e pass - attend
3e pass - blocages
4e pass - détecté

J'ai essayé de mettre les cordes à simple et double guillemets, mais cela ne semble pas aider. Des idées?
  #2 (permalink)  
Old 06-23-2006
Doc_RuNNeR Doc_RuNNeR is offline
Registered User
  
 

Date d'inscription: juin 2006
Messages: 17
Je ne connais pas beaucoup de francais et je vais essayer de l'expliquer. Si vous avez d'autres questions, vous pouvez demander à nouveau . Ok, le système a une variable, pour que la boucle utilise pour savoir combien de paramètres a le fichier, par exemple un texte. La variable d'espace, les tabulations et de retour (de tous les cours de cette convinations).

LA REPONSE

$ cat> exemple
\u003d # espaces IFS IFS est la variable système
IFS \u003d "# Nous inicializating IFS \u003d retour à la ligne de tae
"
........................
........................
IFS \u003d $ espaces # Nous avons utilisé le var espaces pour donner la valeur d'IFS againwhen nous terminons
unset espaces

Au revoir
  #3 (permalink)  
Old 06-23-2006
kadishmj kadishmj is offline
Registered User
  
 

Join Date: Feb 2005
Messages: 11
Merci de veiller à ce Doc_RuNNeR, mais je ne comprends pas votre solution
  #4 (permalink)  
Old 06-23-2006
LivinFree's Avatar
LivinFree LivinFree is offline Forum Advisor  
Goober Extraordinaire
  
 

Date d'inscription: juillet 2001
Lieu: Portland, OR, Etats-Unis
Messages: 1584
Essayez:
Code:
for PARAM in "${a}" "${b}"
  #5 (permalink)  
Old 06-23-2006
Doc_RuNNeR Doc_RuNNeR is offline
Registered User
  
 

Date d'inscription: juin 2006
Messages: 17
#! / bin / ksh

espaces IFS \u003d
IFS \u003d "
"
for i in "bonjour monde"
faire
echo $ i
fait
IFS \u003d $ espaces

-----------------

Essayez ce script
  #6 (permalink)  
Old 06-26-2006
kadishmj kadishmj is offline
Registered User
  
 

Join Date: Feb 2005
Messages: 11
Merci pour les suggestions de chacun. J'ai finalement obtenu ce travail:

Code:
OUTFILE=summary.out
a='Deadlocks detected'
b='Lock escalations'

for PARAM in "${a}" "${b}"
do

 echo ${PARAM}

 COUNT=1

   while ((COUNT < 41))
   do
      INFILE=DB2Snapshot_${1}_${COUNT}.log
      /usr/bin/grep "${PARAM}" ${INFILE} >> ${OUTFILE}

   ((COUNT=COUNT+1))
   done
done
  #7 (permalink)  
Old 10-06-2008
er_aparna er_aparna is offline
Registered User
  
 

Join Date: Feb 2006
Posts: 52
faire des espaces lors de la lecture de fichier à partir de la boucle

Salut,

Je reçois même problème,
mais dans mon cas, je suis aller chercher de valeur de variable à partir d'un fichier, puis l'écho de la valeur, mais compte tenu de ses espaces dans le fichier. pour exmp:

file - temp1 a contenu entre guillemets
"nom de groupe utilisé pour communiquer avec le service x"
"nom de groupe utilisé pour communiquer avec le service y"

i pour la boucle:
for var in `cat" temp1 "»
faire
echo "$ var \u003d DESC;"
fait


la sortie désirée est
DESC \u003d "nom de groupe utilisé pour communiquer avec le service x";
DESC \u003d "nom de groupe utilisé pour communiquer avec le service y";

Toutefois, la sortie à venir est
DESC \u003d "groupe";
DESC \u003d "nom";

la lecture des espaces aussi ...

Pls suggérer ...............

Merci d'avance
Aparna
Closed Thread

Bookmarks

Thread Tools Recherche sur ce Thread
Recherche sur ce Thread:

Recherche avancée
Modes d'affichage Rate this thread
Rate this thread:

Règles de messages
Tu mai pas de nouvelles discussions: nonoui
Tu mai pas envoyer des réponses:
Tu mai pas envoyer des pièces jointes
Tu mai pas modifier vos messages

BB code est Sur
Smilies sont Sur
[IMG] code est Sur
Le code HTML est Hors tension
Trackbacks sont Sur
Pingbacks sont Sur
Refbacks sont Sur




Toutes les heures sont au format GMT -4. Le temps est maintenant 01:05 PM.


Powered by: vBulletin, Copyright © 2000 - 2006, Jelsoft Enterprises Limited. Traductions Langue Powered by .
vBCredits v1.4 Copyright © 2007 - 2008, PixelFX Studios
Les systèmes UNIX et Linux Forums Content Copyright © 1993-2009. Tous droits Reserved.Ad de gestion par RedTyger

Content Relevant URLs par vBSEO 3.2.0