[TXT] Supprimer le dernier caractère
Khalzaam
-
lami20j Messages postés 21644 Date d'inscription Statut Modérateur, Contributeur sécurité Dernière intervention -
lami20j Messages postés 21644 Date d'inscription Statut Modérateur, Contributeur sécurité Dernière intervention -
Bonjour à tous,
J'ai un soucis sur un fichier texte.
Il est généré par SQLplus, et je me retrouve avec des lignes de 362 caractères, là où il ne m'en faut que 361. Il rajoute un caractère "blanc" à chaque fin de ligne ...
Du coup, je cherche une commande qui me permettrait de supprimer ce dernier caractère à chaque fin de ligne.
Si quelq'un avait la réponse, ça m'éaiderait énormément !
Merci d'avance !
J'ai un soucis sur un fichier texte.
Il est généré par SQLplus, et je me retrouve avec des lignes de 362 caractères, là où il ne m'en faut que 361. Il rajoute un caractère "blanc" à chaque fin de ligne ...
Du coup, je cherche une commande qui me permettrait de supprimer ce dernier caractère à chaque fin de ligne.
Si quelq'un avait la réponse, ça m'éaiderait énormément !
Merci d'avance !
A voir également:
- [TXT] Supprimer le dernier caractère
- Supprimer rond bleu whatsapp - Guide
- Caractère spéciaux - Guide
- Caractere speciaux - Guide
- Supprimer page word - Guide
- Caractère ascii - Guide
2 réponses
Salut,
A ne pas oublié qu'une ligne est une chaîne avec un caractère de fin de ligne :
Linux \n
Win \r\n
Exemple :
Je crée un fichier à la volée qui contiendra la lettre 'a', 361 fois
Si j'ai besoin que de la chaîne il me reste à enlever le caractère nouvelle ligne
Et les chaines de 361 caractères affichées (j'ai mis la longueur en 1er et j'ai ajoute dans print un \n pour affichage sinon l'affichage est un chaine de 361 * 2 caractères.
C'est à titre d'exemple et pas pour apprendre Perl.
lami20j
A ne pas oublié qu'une ligne est une chaîne avec un caractère de fin de ligne :
Linux \n
Win \r\n
Exemple :
Je crée un fichier à la volée qui contiendra la lettre 'a', 361 fois
$ perl -e 'print "a" x 361' > viderj'affiche sa longueur
$ perl -ne 'print length,"\n"' vider 361j'ajoute une autre chaîne (pas ligne)
$ perl -e 'print "b" x 361' >> videret je compte
$ perl -ne 'print length,"\n"' vider 722Maintenant je vais créer des lignes de 361 caractères + caractère fin de ligne donc 362
$ perl -e 'print "a" x 361,"\n"' > vider $ perl -e 'print "b" x 361,"\n"' >> vider $ perl -ne 'print length,"\n"' vider 362 362Le résultat 362 est normal.
Si j'ai besoin que de la chaîne il me reste à enlever le caractère nouvelle ligne
$ perl -ne 'print length(substr($_,0,length($_)-1)),"\n"' vider 361 361
Et les chaines de 361 caractères affichées (j'ai mis la longueur en 1er et j'ai ajoute dans print un \n pour affichage sinon l'affichage est un chaine de 361 * 2 caractères.
lami20j@debian:~/trash$ perl -ne 'print length($1),$1,"\n" if /(.*)\n/' vider 361aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa 361bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
C'est à titre d'exemple et pas pour apprendre Perl.
lami20j