Comment afficher des chaines de caractère qui se suivent
Bonjour,
je dispose d'un ficher extraction.csv :
0670385S Ecole élémentaire Ecole primaire Home Strasbourg
0670388Z Ecole élémentaire Ecole primaire Work Strasbourg
Je souhaiterais extraire les données suivantes:
0670385S Ecole primaire Home Strasbourg
0670388Z Ecole primaire Work Strasbourg
j'ai essayé de faire un
awk '{print $1$4$5$6$7}' fichier.csv
mais le résultat n'est pas probant. Les caractères sont attachés
0670385SEcoleprimaireHomeStrasbourg
0670388ZEcoleprimaireWorkStrasbourg
Je regarderai les liens proposés par le modérateur...Je sais qu'il existe sed et grep mais je ne maîtrise pas ces commandes.
J'espère avoir un retour de votre part. Merci
jakol
je dispose d'un ficher extraction.csv :
0670385S Ecole élémentaire Ecole primaire Home Strasbourg
0670388Z Ecole élémentaire Ecole primaire Work Strasbourg
Je souhaiterais extraire les données suivantes:
0670385S Ecole primaire Home Strasbourg
0670388Z Ecole primaire Work Strasbourg
j'ai essayé de faire un
awk '{print $1$4$5$6$7}' fichier.csv
mais le résultat n'est pas probant. Les caractères sont attachés
0670385SEcoleprimaireHomeStrasbourg
0670388ZEcoleprimaireWorkStrasbourg
Je regarderai les liens proposés par le modérateur...Je sais qu'il existe sed et grep mais je ne maîtrise pas ces commandes.
J'espère avoir un retour de votre part. Merci
jakol
Configuration: Windows / Chrome 75.0.3770.100
A voir également:
- Comment afficher des chaines de caractère qui se suivent
- Caractère ascii - Guide
- Recherche automatique des chaînes ne fonctionne pas - Guide
- Caractère spéciaux - Guide
- Caractere speciaux - Guide
- Caractere vide - Guide
3 réponses
Bonjour,
Le plus simple est de rajouter des virgules, ainsi
Autre solution, si tes champs sont séparés par des espaces simples, tu peux utiliser
Bonne chance
Le plus simple est de rajouter des virgules, ainsi
awkséparera les champs par des espaces.
awk '{print $1, $4, $5, $6, $7}' fichier.csv
Autre solution, si tes champs sont séparés par des espaces simples, tu peux utiliser
cut:
cut -d" " -f1,4,5,6,7 fichier.csv
Bonne chance
salut,
en bash :
en bash :
while read -ra ar; do echo "${ar[0]} ${ar[@]: -4}"; done <fichier.txtje mets
0670385S Ecole primaire Home Strasbourg
0670388Z Ecole primaire Work Strasbourg
.txt, parce que CSV = Comma-Separated Values
Même si tu as raison, on désigne souvent un fichier texte structuré en ligne et en colonnes ainsi, bien qu'il n'y ait pas forcément de virgules. On devrait en toute rigueur parler de fichiers fichiers DSV.
Mais c'est un abus de langage tellement répendu que le parseur dédié en python s'appelle bien csv, bien que le délimiteur est paramétrable...
https://docs.python.org/3/library/csv.html
Je pense que la cause de cet abus de langage est que l'extension
Merci toutefois pour cette remarque.
Mais c'est un abus de langage tellement répendu que le parseur dédié en python s'appelle bien csv, bien que le délimiteur est paramétrable...
https://docs.python.org/3/library/csv.html
Je pense que la cause de cet abus de langage est que l'extension
.csvest souvent associées au niveau du système à un tableur contrairement aux extensions
.tsvou
.dsv.
Merci toutefois pour cette remarque.