Bash : 2 variables sdepuis un fichier texte

Fermé
vitcz Messages postés 46 Date d'inscription mardi 22 juillet 2008 Statut Membre Dernière intervention 8 septembre 2008 - 8 sept. 2008 à 18:29
jipicy Messages postés 40842 Date d'inscription jeudi 28 août 2003 Statut Modérateur Dernière intervention 10 août 2020 - 8 sept. 2008 à 18:48
Bonjour à tous,

Je rédige un script et je bloc sur une fonction: Voici mon scénario :

J'ai un fichier texte comprenant des valeures séparées par une virgule :
Nom_table1, Type_table1
Nom_table2, Type_table2
Nom_table3, Type_table3...

je dois exécuter une fonction qui pour chaque ligne dois récupérer la première puis la deuxième valeure :
voic mon scipt :

#----------------------------------------------------------------------------------
#!/bin/bash

mon_fichier_texte=/home/liste.txt
table_name=$(egrep -v '^(#|*$|[\s]*\n)' $mon_fichier_texte | awk -F ',' '{print $1}')
table_type=$(egrep -v '^(#|*$|[\s]*\n)' $mon_fichier_texte | awk -F ',' '{print $2}')

egrep -v '^(#|*$|[\s]*\n)' $mon_fichier_texte | while read line; do fonction_spécifique() -o init -l $table_name,shape -f $table_name -t $table_type -a all -u user -p passwd; done

#----------------------------------------------------------------------------------

Actuellement je récupère à chaque passage : toutes les valeures de la colonne.

Gros probleme de logique dans mon algo je pense et mauvaise connaissance de hawk : deux jours a me presser le citron : merci pour votre aide.
A voir également:

1 réponse

jipicy Messages postés 40842 Date d'inscription jeudi 28 août 2003 Statut Modérateur Dernière intervention 10 août 2020 4 895
8 sept. 2008 à 18:48
Salut,

Voilà qui devrait t'aider à moins te prendre la tête :
[tmpfs]$ var="Nom_table1, Type_table1"
[tmpfs]$ echo ${var%,*}
Nom_table1
[tmpfs]$ echo ${var#*,}
Type_table1
[tmpfs]$
man bash (Remplacement des paramètres)

;-))
0