Problème avec la commande AWK
Résolu
Bojamin
-
jee pee Messages postés 42402 Statut Modérateur -
jee pee Messages postés 42402 Statut Modérateur -
Bonjour,
Après avoir fait un script Shell permettant de renseigner des notes pour des élèves dans un fichier csv. J'aimerais séparer les différents champs pour les mettre dans des colonnes séparées.
Actuellement j'ai toutes mes informations dans la même case quand j'ouvre un excel ce qui rend la chose illisible au possible.
J'ai commencer à chercher une solution mais je ne trouve pas grand chose.
Après avoir fait un script Shell permettant de renseigner des notes pour des élèves dans un fichier csv. J'aimerais séparer les différents champs pour les mettre dans des colonnes séparées.
Actuellement j'ai toutes mes informations dans la même case quand j'ouvre un excel ce qui rend la chose illisible au possible.
J'ai commencer à chercher une solution mais je ne trouve pas grand chose.
#!/bin/bash
clear
eleve=$1
classe=$2
while [[ -z $eleve ]] || [[ $eleve -eq "${eleve##[0-9]*}" ]]
do
read -p 'Il faut un nombre délèves valide : ' eleve
done
for (( i=1; i <= $eleve; i++ ))
do
read -p 'Il faut une note entre 0 et 20 : ' note
while [[ -z $note ]] || [[ $note -gt 20 ]] || [[ $note -eq "${note##[0-9]*}" ]]
do
read -p 'Mets une note entre 0 et 20 ! : ' note
done
read -p 'Pouvez vous me donner un prénom : ' prenom
read -p 'Pouvez vous me donner un nom : ' nom
if [ 18 -le "$note" ]; then
resultat="Parfait"
elif [ 16 -le "$note" ]; then
resultat="Très bien"
elif [ 14 -le "$note" ]; then
resultat="Bien"
elif [ 11 -le "$note" ]; then
resultat="Assez bien"
elif [ "$note" -lt 11 ] && [ "$note" -ge 0 ]; then
resultat="Insuffisant"
elif [ "$note" -lt 0 ]; then
echo "Vous ne pouvez pas avoir en dessous de 0"
fi
echo "L'élève n°"$i": "$nom $prenom" a eu cette note: "$note". C'est "$resultat.
#echo $prenom >> notes.csv; echo $nom >> notes.csv ; echo $note >> notes.csv; echo $resultat >> notes.csv
echo $prenom,$nom,$note,$resultat >> notes.csv | awk -F"," '{echo $1 " " $2 "," $3 " " $4 " " $5 "," $7}'
done
Configuration: Windows / Chrome 78.0.3904.87
A voir également:
- Problème avec la commande AWK
- Invite de commande - Guide
- Commande terminal mac - Guide
- Commande dism - Guide
- Diskpart commande - Guide
- Commande scannow - Guide
2 réponses
Salut,
Et si tu nous montrais ce que tu as comme résultat dans ton fichier et ce que tu attends.
La commande awk est inutile !
les commandes echo et printf peuvent faire ce que tu attends.
Et si tu nous montrais ce que tu as comme résultat dans ton fichier et ce que tu attends.
La commande awk est inutile !
les commandes echo et printf peuvent faire ce que tu attends.