Supprimer les décimales sur un champs numérique dans une ligne
Résolu
JsuisNul
Messages postés
137
Statut
Membre
-
JsuisNul Messages postés 137 Statut Membre -
JsuisNul Messages postés 137 Statut Membre -
Bonjour,
J'ai le fichier suivant et j'aimerai enlever les décimales sur un champ bien précis mais que sur certaine ligne à savoir les ligne avec le "SALBASE":
fichier :
00100290;20130101;COTIPAT2;1296.86;R
00100290;20130101;HMENS;151.67;R
00100290;20130101;SALBRUT;2866.78;R
00100290;20130101;SALNET;2199.54;R
00100290;20130101;PRIMANN;0.00;R
00100290;20130101;PRIMMENS;369.87;R
00100290;20130101;SALBASE;2249.00;R
00100290;20130101;COTIPAT;1396.05;R
00100290;20130101;PRIMANC;247.91;R
04000303;20130101;COTIPAT2;1368.45;R
04000303;20130101;HMENS;151.67;R
04000303;20130101;SALBRUT;3025.00;R
04000303;20130101;SALNET;2320.91;R
04000303;20130101;PRIMANN;0.00;R
04000303;20130101;PRIMMENS;0.00;R
04000303;20130101;SALBASE;2750.00;R
04000303;20130101;COTIPAT;1473.11;R
04000303;20130101;PRIMANC;275.00;R
00004027;20130101;COTIPAT2;1161.78;R
00004027;20130101;HMENS;151.67;R
00004027;20130101;SALBRUT;2568.16;R
00004027;20130101;SALNET;1970.42;R
00004027;20130101;PRIMANN;0.00;R
00004027;20130101;PRIMMENS;320.77;R
00004027;20130101;SALBASE;2027.00;R
00004027;20130101;COTIPAT;1250.64;R
00004027;20130101;PRIMANC;220.39;R
Resultat souhaité :
00100290;20130101;COTIPAT2;1296.86;R
00100290;20130101;HMENS;151.67;R
00100290;20130101;SALBRUT;2866.78;R
00100290;20130101;SALNET;2199.54;R
00100290;20130101;PRIMANN;0.00;R
00100290;20130101;PRIMMENS;369.87;R
00100290;20130101;SALBASE;2249;R
00100290;20130101;COTIPAT;1396.05;R
00100290;20130101;PRIMANC;247.91;R
04000303;20130101;COTIPAT2;1368.45;R
04000303;20130101;HMENS;151.67;R
04000303;20130101;SALBRUT;3025.00;R
04000303;20130101;SALNET;2320.91;R
04000303;20130101;PRIMANN;0.00;R
04000303;20130101;PRIMMENS;0.00;R
04000303;20130101;SALBASE;2750;R
04000303;20130101;COTIPAT;1473.11;R
04000303;20130101;PRIMANC;275.00;R
00004027;20130101;COTIPAT2;1161.78;R
00004027;20130101;HMENS;151.67;R
00004027;20130101;SALBRUT;2568.16;R
00004027;20130101;SALNET;1970.42;R
00004027;20130101;PRIMANN;0.00;R
00004027;20130101;PRIMMENS;320.77;R
00004027;20130101;SALBASE;2027;R
00004027;20130101;COTIPAT;1250.64;R
00004027;20130101;PRIMANC;220.39;R
Merci d'd'avance pour votre aide ;-)
J'ai le fichier suivant et j'aimerai enlever les décimales sur un champ bien précis mais que sur certaine ligne à savoir les ligne avec le "SALBASE":
fichier :
00100290;20130101;COTIPAT2;1296.86;R
00100290;20130101;HMENS;151.67;R
00100290;20130101;SALBRUT;2866.78;R
00100290;20130101;SALNET;2199.54;R
00100290;20130101;PRIMANN;0.00;R
00100290;20130101;PRIMMENS;369.87;R
00100290;20130101;SALBASE;2249.00;R
00100290;20130101;COTIPAT;1396.05;R
00100290;20130101;PRIMANC;247.91;R
04000303;20130101;COTIPAT2;1368.45;R
04000303;20130101;HMENS;151.67;R
04000303;20130101;SALBRUT;3025.00;R
04000303;20130101;SALNET;2320.91;R
04000303;20130101;PRIMANN;0.00;R
04000303;20130101;PRIMMENS;0.00;R
04000303;20130101;SALBASE;2750.00;R
04000303;20130101;COTIPAT;1473.11;R
04000303;20130101;PRIMANC;275.00;R
00004027;20130101;COTIPAT2;1161.78;R
00004027;20130101;HMENS;151.67;R
00004027;20130101;SALBRUT;2568.16;R
00004027;20130101;SALNET;1970.42;R
00004027;20130101;PRIMANN;0.00;R
00004027;20130101;PRIMMENS;320.77;R
00004027;20130101;SALBASE;2027.00;R
00004027;20130101;COTIPAT;1250.64;R
00004027;20130101;PRIMANC;220.39;R
Resultat souhaité :
00100290;20130101;COTIPAT2;1296.86;R
00100290;20130101;HMENS;151.67;R
00100290;20130101;SALBRUT;2866.78;R
00100290;20130101;SALNET;2199.54;R
00100290;20130101;PRIMANN;0.00;R
00100290;20130101;PRIMMENS;369.87;R
00100290;20130101;SALBASE;2249;R
00100290;20130101;COTIPAT;1396.05;R
00100290;20130101;PRIMANC;247.91;R
04000303;20130101;COTIPAT2;1368.45;R
04000303;20130101;HMENS;151.67;R
04000303;20130101;SALBRUT;3025.00;R
04000303;20130101;SALNET;2320.91;R
04000303;20130101;PRIMANN;0.00;R
04000303;20130101;PRIMMENS;0.00;R
04000303;20130101;SALBASE;2750;R
04000303;20130101;COTIPAT;1473.11;R
04000303;20130101;PRIMANC;275.00;R
00004027;20130101;COTIPAT2;1161.78;R
00004027;20130101;HMENS;151.67;R
00004027;20130101;SALBRUT;2568.16;R
00004027;20130101;SALNET;1970.42;R
00004027;20130101;PRIMANN;0.00;R
00004027;20130101;PRIMMENS;320.77;R
00004027;20130101;SALBASE;2027;R
00004027;20130101;COTIPAT;1250.64;R
00004027;20130101;PRIMANC;220.39;R
Merci d'd'avance pour votre aide ;-)
A voir également:
- Supprimer les décimales sur un champs numérique dans une ligne
- Supprimer rond bleu whatsapp - Guide
- Comment supprimer une page sur word - Guide
- Comment supprimer une application préinstallée sur android - Guide
- Partager photos en ligne - Guide
- Comment supprimer une ligne dans un tableau word - Guide
4 réponses
Salut,
Rajouter l'option "-i.bak" pour un remplacement direct dans le fichier avec une sauvegarde en ".bak" en prime ;-))
$ cat plop
00100290;20130101;COTIPAT2;1296.86;R
00100290;20130101;HMENS;151.67;R
00100290;20130101;SALBRUT;2866.78;R
00100290;20130101;SALNET;2199.54;R
00100290;20130101;PRIMANN;0.00;R
00100290;20130101;PRIMMENS;369.87;R
00100290;20130101;SALBASE;2249.00;R
00100290;20130101;COTIPAT;1396.05;R
00100290;20130101;PRIMANC;247.91;R
04000303;20130101;COTIPAT2;1368.45;R
04000303;20130101;HMENS;151.67;R
04000303;20130101;SALBRUT;3025.00;R
04000303;20130101;SALNET;2320.91;R
04000303;20130101;PRIMANN;0.00;R
04000303;20130101;PRIMMENS;0.00;R
04000303;20130101;SALBASE;2750.00;R
04000303;20130101;COTIPAT;1473.11;R
04000303;20130101;PRIMANC;275.00;R
00004027;20130101;COTIPAT2;1161.78;R
00004027;20130101;HMENS;151.67;R
00004027;20130101;SALBRUT;2568.16;R
00004027;20130101;SALNET;1970.42;R
00004027;20130101;PRIMANN;0.00;R
00004027;20130101;PRIMMENS;320.77;R
00004027;20130101;SALBASE;2027.00;R
00004027;20130101;COTIPAT;1250.64;R
00004027;20130101;PRIMANC;220.39;R
$ sed '/SALBASE/{s/\.[[:digit:]]\+//}' plop
00100290;20130101;COTIPAT2;1296.86;R
00100290;20130101;HMENS;151.67;R
00100290;20130101;SALBRUT;2866.78;R
00100290;20130101;SALNET;2199.54;R
00100290;20130101;PRIMANN;0.00;R
00100290;20130101;PRIMMENS;369.87;R
00100290;20130101;SALBASE;2249;R
00100290;20130101;COTIPAT;1396.05;R
00100290;20130101;PRIMANC;247.91;R
04000303;20130101;COTIPAT2;1368.45;R
04000303;20130101;HMENS;151.67;R
04000303;20130101;SALBRUT;3025.00;R
04000303;20130101;SALNET;2320.91;R
04000303;20130101;PRIMANN;0.00;R
04000303;20130101;PRIMMENS;0.00;R
04000303;20130101;SALBASE;2750;R
04000303;20130101;COTIPAT;1473.11;R
04000303;20130101;PRIMANC;275.00;R
00004027;20130101;COTIPAT2;1161.78;R
00004027;20130101;HMENS;151.67;R
00004027;20130101;SALBRUT;2568.16;R
00004027;20130101;SALNET;1970.42;R
00004027;20130101;PRIMANN;0.00;R
00004027;20130101;PRIMMENS;320.77;R
00004027;20130101;SALBASE;2027;R
00004027;20130101;COTIPAT;1250.64;R
00004027;20130101;PRIMANC;220.39;R
Rajouter l'option "-i.bak" pour un remplacement direct dans le fichier avec une sauvegarde en ".bak" en prime ;-))
sed -i.bak '/SALBASE/{s/\.[[:digit:]]\+//}' plop
Bonjour,
Merci pour ta réponse.
J'ai testé et j'ai ce message d'erreur :
sed: Function /SALBASE/{s/\.[[:digit:]]\+//} cannot be parsed.
Merci pour ta réponse.
J'ai testé et j'ai ce message d'erreur :
sed: Function /SALBASE/{s/\.[[:digit:]]\+//} cannot be parsed.