Besoin de lire dans un fichier ligne par ligne separateur espace
Fermé
bong26
Messages postés
7
Date d'inscription
lundi 22 mai 2017
Statut
Membre
Dernière intervention
1 octobre 2017
-
29 sept. 2017 à 16:47
zipe31 Messages postés 36402 Date d'inscription dimanche 7 novembre 2010 Statut Contributeur Dernière intervention 27 janvier 2021 - 2 oct. 2017 à 17:19
zipe31 Messages postés 36402 Date d'inscription dimanche 7 novembre 2010 Statut Contributeur Dernière intervention 27 janvier 2021 - 2 oct. 2017 à 17:19
A voir également:
- Bash lire un fichier ligne par ligne
- Lire le coran en français pdf - Télécharger - Histoire & Religion
- Fichier rar - Guide
- Apparaitre hors ligne instagram - Guide
- Vente en ligne particulier - Guide
- Aller à la ligne excel - Guide
3 réponses
zipe31
Messages postés
36402
Date d'inscription
dimanche 7 novembre 2010
Statut
Contributeur
Dernière intervention
27 janvier 2021
6 408
29 sept. 2017 à 17:04
29 sept. 2017 à 17:04
Salut,
Le fichier :
Le script :
Le fichier :
$ cat fich.txt
compte1 121341 banque1
compte2 121eee banque2
compte3 777777 banque3
Le script :
$ while read c1 c2 c3;do echo "Champ1 = ${c1} | Champ2 = ${c2} | Champ3 = ${c3}"; done < fich.txt
Champ1 = compte1 | Champ2 = 121341 | Champ3 = banque1
Champ1 = compte2 | Champ2 = 121eee | Champ3 = banque2
Champ1 = compte3 | Champ2 = 777777 | Champ3 = banque3
bong26
Messages postés
7
Date d'inscription
lundi 22 mai 2017
Statut
Membre
Dernière intervention
1 octobre 2017
30 sept. 2017 à 13:30
30 sept. 2017 à 13:30
Merci dans un 1er temps pour ta réponse.
Mais dans ta solution tu lui formates un mot : champ1, champs2 etc....
Sur un fichier à plusieurs ligne ça ne va pas être gérable
moi ce que j'ai besoin, j'aimerais que la boucle gère mon fichier rentré sans modification
$ cat fich.txt
compte1 121341 banque1
compte2 121eee banque2
compte3 777777 banque3
............etc
Mais dans ta solution tu lui formates un mot : champ1, champs2 etc....
Sur un fichier à plusieurs ligne ça ne va pas être gérable
moi ce que j'ai besoin, j'aimerais que la boucle gère mon fichier rentré sans modification
$ cat fich.txt
compte1 121341 banque1
compte2 121eee banque2
compte3 777777 banque3
............etc
zipe31
Messages postés
36402
Date d'inscription
dimanche 7 novembre 2010
Statut
Contributeur
Dernière intervention
27 janvier 2021
6 408
30 sept. 2017 à 13:58
30 sept. 2017 à 13:58
Ma réponse est un exemple que tu dois adapter à ton besoin.
N'ayant pas à disposition ton application "dProjectCtl.sh", je ne peux que te proposer une réponse que je pense adaptée !
Si tu enlèves le "echo" de ma ligne de commande, ça devrait faire ce que tu veux, non ?
N'ayant pas à disposition ton application "dProjectCtl.sh", je ne peux que te proposer une réponse que je pense adaptée !
$ cat fich.txt
compte1 121341 banque1
compte2 121eee banque2
compte3 777777 banque3
$ while read APPLI NODE INSTANCE;do
echo "dProjectCtl.sh --project ${APPLI} --instance ${NODE}:${INSTANCE} status" >> JVM.txt
done < fich.txt
$ cat JVM.txt
dProjectCtl.sh --project compte1 --instance 121341:banque1 status
dProjectCtl.sh --project compte2 --instance 121eee:banque2 status
dProjectCtl.sh --project compte3 --instance 777777:banque3 status
Si tu enlèves le "echo" de ma ligne de commande, ça devrait faire ce que tu veux, non ?
bong26
Messages postés
7
Date d'inscription
lundi 22 mai 2017
Statut
Membre
Dernière intervention
1 octobre 2017
>
zipe31
Messages postés
36402
Date d'inscription
dimanche 7 novembre 2010
Statut
Contributeur
Dernière intervention
27 janvier 2021
Modifié le 1 oct. 2017 à 21:46
Modifié le 1 oct. 2017 à 21:46
bonsoir zipe31
j'ai bien essayé ton petit test mais il ne veut rien savoir il me crée bien la 1er ligne de ma boucle mais le reste il me sort impossible à creer je ne comprends rien
mon fichier txt ressemble à ça j'ai bien un espace sur les champs
actfgf lr2pr324v actfgfServer01
wasa6 mfle157p wasa6Server01
wasa6 mfle158p wasa6Server02
voici
Project:actfgf/Node:lr2pr324v/Instance:actfgfServer01/: STARTED
le reste impossible à traiter dans la boucle
#########################################################
mon script est bien :
echo " rentrer un fichier: "
read PARAM
while read APPLI NODE INSTANCE
do
jndProjectCtl.sh --project ${APPLI} --instance ${NODE}:${INSTANCE} status >> JVM.TXT
done < $PARAM
j'ai bien essayé ton petit test mais il ne veut rien savoir il me crée bien la 1er ligne de ma boucle mais le reste il me sort impossible à creer je ne comprends rien
mon fichier txt ressemble à ça j'ai bien un espace sur les champs
actfgf lr2pr324v actfgfServer01
wasa6 mfle157p wasa6Server01
wasa6 mfle158p wasa6Server02
voici
Project:actfgf/Node:lr2pr324v/Instance:actfgfServer01/: STARTED
le reste impossible à traiter dans la boucle
#########################################################
mon script est bien :
echo " rentrer un fichier: "
read PARAM
while read APPLI NODE INSTANCE
do
jndProjectCtl.sh --project ${APPLI} --instance ${NODE}:${INSTANCE} status >> JVM.TXT
done < $PARAM
zipe31
Messages postés
36402
Date d'inscription
dimanche 7 novembre 2010
Statut
Contributeur
Dernière intervention
27 janvier 2021
6 408
>
bong26
Messages postés
7
Date d'inscription
lundi 22 mai 2017
Statut
Membre
Dernière intervention
1 octobre 2017
1 oct. 2017 à 21:50
1 oct. 2017 à 21:50
Peux-tu afficher le contenu de ton fichier (les 3-4 premières lignes) avec cette commande :
cat -A fichier.txt?
bong26
Messages postés
7
Date d'inscription
lundi 22 mai 2017
Statut
Membre
Dernière intervention
1 octobre 2017
>
zipe31
Messages postés
36402
Date d'inscription
dimanche 7 novembre 2010
Statut
Contributeur
Dernière intervention
27 janvier 2021
1 oct. 2017 à 22:03
1 oct. 2017 à 22:03
cat -A data.txt
actfgf lr2pr324v actfgfServer01$
wasa6 mfle157p wasa6Server01$
wasa6 mfle158p wasa6Server02$
actfgf lr2pr324v actfgfServer01$
wasa6 mfle157p wasa6Server01$
wasa6 mfle158p wasa6Server02$
zipe31
Messages postés
36402
Date d'inscription
dimanche 7 novembre 2010
Statut
Contributeur
Dernière intervention
27 janvier 2021
6 408
>
bong26
Messages postés
7
Date d'inscription
lundi 22 mai 2017
Statut
Membre
Dernière intervention
1 octobre 2017
1 oct. 2017 à 22:06
1 oct. 2017 à 22:06
Bizarre ;-(
Si tu appliques ma syntaxe (avec le
Si tu appliques ma syntaxe (avec le
echo) est-ce que tu as la même erreur ?
dubcek
Messages postés
18718
Date d'inscription
lundi 15 janvier 2007
Statut
Contributeur
Dernière intervention
22 mars 2024
5 616
2 oct. 2017 à 14:10
2 oct. 2017 à 14:10
hello
mettre un set -x au début du script our voir ce qu'il fait
mettre un set -x au début du script our voir ce qu'il fait