GNU/Linux >> Tutoriels Linux >  >> Linux

Convertir .txt en .csv dans le shell

Seulement sed et rien d'autre

sed 's/ \+/,/g' ifile.txt > ofile.csv

cat ofile.csv

1,4,22.0,3.3,2.3
2,2,34.1,5.4,2.3
3,2,33.0,34.0,2.3
4,12,3.0,43.0,4.4

awk peut être un peu exagéré ici. À mon humble avis, en utilisant tr pour des substitutions directes comme celle-ci, c'est beaucoup plus simple :

$ cat ifile.txt | tr -s '[:blank:]' ',' > ofile.txt

Linux
  1. Affichage du contenu de la plus haute valeur dans les scripts Shell ?

  2. moyen le plus rapide de convertir un fichier délimité par des tabulations en csv sous Linux

  3. Comment convertir DATE en UNIX TIMESTAMP dans un script shell sur MacOS

  4. Comment convertir ISO8859-15 en UTF8 ?

  5. Convertir toutes les extensions de fichiers en minuscules

Comment rediriger la sortie de la commande shell

Comment convertir xlsx au format CSV sous Linux

Convertir la sortie ls en csv

Lecture d'un fichier CSV avec des requêtes SQL à partir du shell Linux

Convertir les CRLF en sauts de ligne sous Linux

Convertir une image en niveaux de gris en image de canal alpha dans le shell Unix