Script Bash sous Linux
Résolu
olilo
-
olilo Messages postés 11 Date d'inscription Statut Membre Dernière intervention -
olilo Messages postés 11 Date d'inscription Statut Membre Dernière intervention -
Bonjour à tous.
Je suis sur un petit problème de script bash sous Linux, j'en fais profiter tout le monde :)
Voila, j'ai un fichier texte du type:
valeur1;valeur2
valeur3;valeur4
valeur5;valeur6
Mon objectif est de lire le fichier ligne par ligne et de créer à chaque fois un fichier portant comme nom la valeur de la 1ere colonne et comportant la valeur de la 2eme colonne.
Donc pour la 1ere ligne, le fichier s'appellerait "valeur1" et contiendrait "valeur2"
J'arrive à lire le fichier ligne par ligne, mais comment récupérer la 1ere valeur pour nommer le fichier ?
Voila, je vais chercher de mon côté, si vous avez des idées, hésitez pas !
Merci,
Olivier
Je suis sur un petit problème de script bash sous Linux, j'en fais profiter tout le monde :)
Voila, j'ai un fichier texte du type:
valeur1;valeur2
valeur3;valeur4
valeur5;valeur6
Mon objectif est de lire le fichier ligne par ligne et de créer à chaque fois un fichier portant comme nom la valeur de la 1ere colonne et comportant la valeur de la 2eme colonne.
Donc pour la 1ere ligne, le fichier s'appellerait "valeur1" et contiendrait "valeur2"
J'arrive à lire le fichier ligne par ligne, mais comment récupérer la 1ere valeur pour nommer le fichier ?
Voila, je vais chercher de mon côté, si vous avez des idées, hésitez pas !
Merci,
Olivier
A voir également:
- Script Bash sous Linux
- Script vidéo youtube - Guide
- Linux reader - Télécharger - Stockage
- Mas script - Accueil - Windows
- Ghost script - Télécharger - Polices de caractères
- Toutou linux - Télécharger - Systèmes d'exploitation
4 réponses
Je pense avoir trouvé une solution un peu barbare, mais ca a l'air de fonctionner. Si vous avez mieux, je veux bien des suggestions :
Donc mon fameux fichier s'appelle classeur1.txt
Je travaille dans le dossier : /root/tempo/
mon script s'appelle script1.sh
#!/bin/bash
#script1.sh
while read line
do echo $line| cut -d $ -f2 >/root/tempo/'echo $line |cut -d $ -f1| tr -d " " '
done
Ensuite j'exécute ./root/tempo/script1.sh<classeur1.txt
Et ca me génère tout mes fichiers avec le contenu.
Bye,
Olivier
Donc mon fameux fichier s'appelle classeur1.txt
Je travaille dans le dossier : /root/tempo/
mon script s'appelle script1.sh
#!/bin/bash
#script1.sh
while read line
do echo $line| cut -d $ -f2 >/root/tempo/'echo $line |cut -d $ -f1| tr -d " " '
done
Ensuite j'exécute ./root/tempo/script1.sh<classeur1.txt
Et ca me génère tout mes fichiers avec le contenu.
Bye,
Olivier
Salut,
;-))
$ ls plop $ cat plop valeur1;valeur2 valeur3;valeur4 valeur5;valeur6 $ OIFS=$IFS; IFS=";" ; while read A B ; do echo "$B" > $A ; done < plop ; IFS=$OIFS $ ls plop valeur1 valeur3 valeur5 $ cat valeur1 valeur2 $ cat valeur3 valeur4 $ cat valeur5 valeur6 $
;-))