Last active
March 26, 2018 12:20
-
-
Save matthieu637/6c8704dc58f9fdc131106552d5d18b00 to your computer and use it in GitHub Desktop.
you have 2 csv for 2 differents years, you want to know who's new, stayed, leaved
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
##1) exporter les fichiers au format CSV | |
##2) extraire les numéros d'identification avec : | |
tail -n +2 2017.csv | cut -d',' -f 1 > id_2017 | |
#tail -n +2 permet d'enlever la première ligne du fichier (souvent des titres de colonnes) | |
#cut -f1 permet de choisir la colonne où se trouve les identifiants | |
##3) vérifier (visualiser) que id_2017 contient bien les identifiants voulus | |
#cat id_2017 | |
##4) répéter l'opération pour l'année 2018 | |
tail -n +2 2018.csv | cut -d',' -f 1 > id_2018 | |
##5) afficher les ID des gens qui sont restés | |
grep -Ff id_2017 id_2018 | |
--> | |
456687 | |
456987 | |
789654 | |
##6) afficher les ID des nouveaux | |
grep -Fvf id_2017 id_2018 | |
--> | |
654894 | |
8795412 | |
##7) afficher les ID des gens qui sont parties | |
grep -Fvf id_2018 id_2017 | |
--> | |
4568778 | |
##8) Pour récupérer toutes les columes des restés, il suffit de rechercher les ID dans le fichier csv : | |
grep -Ff id_2017 id_2018 | xargs -I % grep % 2018.csv | |
--> | |
456687,A,B | |
456987,R,T | |
789654,T,R | |
##8) Pour récupérer toutes les columes des nouveaux, il suffit de rechercher les ID dans le fichier csv : | |
grep -Fvf id_2017 id_2018 | xargs -I % grep % 2018.csv | |
--> | |
654894,T,QQ | |
8795412,T,C | |
##9) Pour récupérer toutes les columes des parties, il suffit de rechercher les ID dans le fichier csv : | |
grep -Fvf id_2018 id_2017 | xargs -I % grep % 2017.csv | |
--> | |
4568778,E,R | |
##10) DEVRAIS ETRE FAIT AU TOUT DEBUT (SUPPRESION DOUBLON) DANS LES 2 FICHIERS | |
tail -n +2 2018.csv | cut -d',' -f 1 | sort | uniq -c | |
--> | |
1 456687 | |
1 456987 | |
1 654894 | |
1 789654 | |
1 8795412 | |
#pas de doublon ici | |
#Si on prend le fichier | |
Numéro,Nom,Prénom | |
789654,T,R | |
456987,R,T | |
8795412,T,C | |
456687,A,B | |
654894,T,QQ | |
8795412,T,Cab | |
tail -n +2 2018.csv | cut -d',' -f 1 | sort | uniq -c | |
--> | |
1 456687 | |
1 456987 | |
1 654894 | |
1 789654 | |
2 8795412 | |
#l'id 8795412 est un doublon (trouvé 2 fois) |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment