Problème avec la commande sed
Bonjour ,
Mon problème que j'ai un script qui permet de créer un fichier contenant des données séparé par un ;.
La dernier ligne contient des blancs que je voulais le supprimé j’ai applique beaucoup des commande avec sed mais ne change rien.
les commandes que j'ai essaie:
Code:
1 2 3 4 5 6 7 8
| sed '/[ /]*$/d' test.csv
sed -e '/^; *$/d'
sed '/^; *$/d'
sed -e 's/[ ]*;=[ ]*/;=/g'
sed -e 's/[ ]*;[ ]*/;/g'
sed -e 's/; *;/;/g' ( déja fonctionner sur un autre fichier mais pas celle que je veux)
sed -e 's/;= *;/;/g'
tr -d ' ' |
Mon fichier de sortie test.csv :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
| =("FRO-GEPSA018");=("34212254600225");01-07-2019/31-07-2019; 1789,32
=("FRO-GNVERT01");=("41985346000584");01-07-2019/31-07-2019; 466,84
=("FRO-ESGED01");=("53983181800064");01-07-2019/31-07-2019; 4788,55
=("FRO-SGE") ;=("54209732400017");01-07-2019/31-07-2019; 1587,78
=("FRO-STO") ;=("54209732400025");01-07-2019/31-07-2019; 798,28
=("FRO-ELOC005");=("55204695500985");01-07-2019/31-07-2019; 4585
=("FRO-ELOC002");=("55204695502627");01-07-2019/31-07-2019; 1997,54
=("FRO-IDFTRT08");=("55204695503542");01-06-2019/30-06-2019; -30,45
=("FRO-IDFTRT08");=("55204695503542");01-07-2019/31-07-2019; 507,58
=("FRO-ELOC015");=("55204695503682");01-07-2019/31-07-2019; 1393,28
=("FRO-IDFTRT02");=("55204695504060");01-07-2019/31-07-2019; 10,31
=("FRO-IDFTRT10");=("55204695504581");01-07-2019/31-07-2019; 1035,77
=("FRO-ELSIEGNE");=("55204695506040");01-07-2019/31-07-2019; 2749,91
=("FRO-BUB2B01");=("55204695506065");01-06-2019/30-06-2019; 369,06
=("FRO-SCDC01");=("74542015800024");01-07-2019/31-07-2019; 1231,65 |
Donc j'ai besoin d'aide comment je puisse faire pour supprimer les blancs avant les montants.
la partie de code de script avec lequel je transforme mon fichier :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
|
@$CHARG_SQLFIC
QUIT;
EOF
if [ $? -eq 1 ] ; then
print_log "<E> Erreur lors de l'exécution du script SQL."
maj_cr 99
else
print_log " -> Création OK."
print_log " -> Suppression des caractères de mise en forme SQL*Plus..."
sed -e 's/ //g' \
-e 's/ //g' \
$CHARG_FICSOR > $CHARG_FICSOR.tmp
mv $CHARG_FICSOR.tmp $CHARG_FICSOR
sed -e 's/[ ]*;[ ]*/;/g' $CHARG_FICSOR >> $CHARG_FICSOR1
sed -e 's/;= *;/; */;=/;/g' $CHARG_FICSOR1 >> $CHARG_FICSOR
fi
fi
imp_etat "$CODSOC" "$CHARG_FICSOR" "Charges"
fi |