Bonjour à tous,
J'ai réussi à utiliser correctement la bouche While avec le paramètre $IFS pour découper un fichier ligne par ligne et récupérer diverses partie de chaque ligne dans une variable.
Par contre toutes variables indiquées dans le fichier à traiter sont prisent comme du texte au lieu d'une variable. En examinant le fonctionnement du script, les variables sont protégée par des '
Y a t'il une solution pour qu'elles ne soient pas protégée?
Voici un exemple raccourcis du script en question :
fichier test.sh
Fichier proglist.txt
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 #!/bin/bash set -x #nom de code de version ubuntu (hardy, jaunty, karmic, ...) codename="karmic" #on découpe l'entrée standard et on affecte chaque portion de ligne à une variable while IFS=',' read paquet depot cle option do #suppression des espaces et tabulation en début et fin de la portion de la ligne demandé via l'argument de fonction scanlist depot=$(echo $depot | sed 's/^[ \t]*//;s/[ \t]*$//') #sortie pour le test visuel echo $depot done < <(grep ^[+] proglist.txt) | sort -u # on trit le fichier en unique et l'injecte en entrée
J'espère avoir fait au plus simple pour ne pas surcharger le sujet...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 # Client de messagerie Empathy +empathy, deb http://ppa.launchpad.net/telepathy/ppa/ubuntu $codename main #Empathy, FA3A1271, facultatif
Partager