Supprimer les premières lignes d'un fichier (de façon variable) avec la commande sed
Bonjour,
Voici un shell de test :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
| #!/bin/bash
########## Script : ztst.sh ##########
# #
# Script testant la commande sed #
# #
########################################################################
# 1/ Choisir le codage utf-8 : car le grep ne marche que avec utf8
#
#liam# iconv -f ISO-8859-1 -t UTF-8 ftst.csv -o ftst1.csv
#
cat ftst.csv #liam#
cat ftst.csv > ftst1.csv #liam#
#
# 2/ Suppression des 9 premières lignes :
# ATTENTION : le 9 pourra varier lors des prochains passages !
#
VAR1=$(grep 'Date;' -n ftst1.csv)
VAR2=${VAR1:0:1}
#sed '1,{$VAR2}d' ftst1.csv #Ne peut pas marcher car '...'
sed '1,9d' ftst1.csv > ftst2.csv
#
#Vérification #liam#
cat ftst2.csv #liam# |
Comment peut-on l'améliorer :
1/ au cas il faille supprimer supprimer un autre nombre que 9 (lignes)
2/ notamment au cas où il faille supprimer 10 lignes au lieu de neuf (9 = 1 caractère; 10 = 2 c)
Voici l'exécution :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39
| $ ./ztst.sh
ligne 01
ligne 02
Historique du 01/09/2001 au 03/11/2021
ligne 04
ligne 05
ligne 06
ligne 07
ligne 08
Date;Nom vernaculaire;Nom latin;Famille;
02/11/2021;Abricotier;Prunus armeniaca;ROSACEÆ;
26/10/2021;Cerisier des oiseaux;Prunus avium;ROSACEÆ;
11/10/2021;Citronnier;Citrus limon;RUTACEÆ;
08/10/2021;Cognassier;Cydonia oblonga;ROSACEÆ;
07/10/2021;Framboisier;Rubus idaeus;ROSACEÆ;
07/10/2021;Groseillier à grappes;Ribes rubrum;GROSSULARIACEÆ;
05/10/2021;Achillée millefeuille;Achillea millefolium;ASTERACEÆ;
01/10/2021;Alliaire;Alliaria petiolata;BRASSICACEÆ;
30/09/2021;Aubépine à un style;Crataegus monogyna;ROSACEÆ;
29/09/2021;Aulne glutineux;Alnus glutinosa;BETULACEÆ;
21/09/2021;Bouleau pendant;Betula pendula;BETULACEÆ;
10/09/2021;Cardamine hérissée;Cardamine hirsuta;BRASSICACEÆ;
06/09/2021;Carotte;Daucus carota;APIACEÆ;
02/09/2021;Chêne pédonculé;Quercus robur;FAGACEÆ;
02/11/2021;Abricotier;Prunus armeniaca;ROSACEÆ;
26/10/2021;Cerisier des oiseaux;Prunus avium;ROSACEÆ;
11/10/2021;Citronnier;Citrus limon;RUTACEÆ;
08/10/2021;Cognassier;Cydonia oblonga;ROSACEÆ;
07/10/2021;Framboisier;Rubus idaeus;ROSACEÆ;
07/10/2021;Groseillier à grappes;Ribes rubrum;GROSSULARIACEÆ;
05/10/2021;Achillée millefeuille;Achillea millefolium;ASTERACEÆ;
01/10/2021;Alliaire;Alliaria petiolata;BRASSICACEÆ;
30/09/2021;Aubépine à un style;Crataegus monogyna;ROSACEÆ;
29/09/2021;Aulne glutineux;Alnus glutinosa;BETULACEÆ;
21/09/2021;Bouleau pendant;Betula pendula;BETULACEÆ;
10/09/2021;Cardamine hérissée;Cardamine hirsuta;BRASSICACEÆ;
06/09/2021;Carotte;Daucus carota;APIACEÆ;
02/09/2021;Chêne pédonculé;Quercus robur;FAGACEÆ;n : |