J'essaie de convertir un fichier texte en une feuille de calcul séparée par des tabulations. Mon fichier texte ressemble à ceci:
Dog
Cat
Fish
Lizard
Wolf
Lion
Shark
Gecko
Coyote
Puma
Eel
Iguana
Avec les fonctions de recherche et de remplacement standard dans Gedit ou LibreOffice, il est facile de remplacer la fin de ligne par un onglet. Mais si je permute simplement les retours chariot pour les onglets, j'obtiendrai ceci:
Dog Cat Fish Lizard Wolf Lion Shark Gecko Coyote Puma Eel Iguana
Mais ce que je dois faire, c'est que ça ressemble à ceci:
Dog Cat Fish Lizard
Wolf Lion Shark Gecko
Coyote Puma Eel Iguana
Alors, puis-je échanger chaque caractère de fin de ligne pour un onglet, sauf pour chaque quatrième ligne?
Je ne sais pas si ce type d'itération conditionnelle peut être effectué avec des expressions régulières dans un programme comme Gedit ou LibreOffice, alors peut-être que cela doit être une sorte de fonction de ligne de commande? Je ne sais même pas quel est le meilleur outil pour commencer.
Mise à jour:
J'ai essayé les commandes suivantes:
sed 'N;N;N;s/\n/\t/g' file > file.tsv
paste - - - - < file > file.tsv
pr -aT -s$'\t' -4 file > file.tsv
xargs -d '\n' -n4 < inputfile.txt
Mais lorsque j'essaie d'ouvrir le tsv
fichier résultant dans LibreOffice, les colonnes ne sont pas tout à fait correctes. Je ne sais pas si cela signifie que je n'exécute pas correctement les commandes ci-dessus, ou si je fais quelque chose de mal dans la fonction d'importation de LibreOffice:
Juste pour référence, le résultat souhaité devrait ressembler à ceci:
dos2unix
etunix2dos
.