Supprimer le dernier \\n d'un fichier
Résolu
mu93
-
mu93 Messages postés 2 Statut Membre -
mu93 Messages postés 2 Statut Membre -
Bonjour,
Je cherche à supprimer le dernier caractère \n d'un fichier, tout en conservant tous les autres, sachant que je ne peux utiliser que les commandes shells proposées par AIX 4.3. (pas de compilateur C)
si j'utilise un tr -d '\n', c'est trop radical, je perds tous les retours à la ligne
est-ce que mon cas est désespéré ?
Merci
Je cherche à supprimer le dernier caractère \n d'un fichier, tout en conservant tous les autres, sachant que je ne peux utiliser que les commandes shells proposées par AIX 4.3. (pas de compilateur C)
si j'utilise un tr -d '\n', c'est trop radical, je perds tous les retours à la ligne
est-ce que mon cas est désespéré ?
Merci
Configuration: AIX 4.3
2 réponses
-
Salut,
avec perl ça ne marche pas?lami20j@debserv:~$ cat fic ch=a.chaine1,b.chaine2 ch1=a.chaine1,b.chaine2 ch2=c.chaine3 ch3=a.chaine4,b.chaine5,chiane6 etc... lami20j@debserv:~$ perl -pi -e 's/\n// if eof' fic lami20j@debserv:~$ cat fic ch=a.chaine1,b.chaine2 ch1=a.chaine1,b.chaine2 ch2=c.chaine3 ch3=a.chaine4,b.chaine5,chiane6 etc... lami20j@debserv:~$
-
Finalement, j'ai trouvé quelque chose ==>
NB_LIG=`sed -n '$=' $1.tmp `
echo "nb de lignes ==> " $NB_LIG
awk -vlig=$NB_LIG '{printf("%s", $0); if (NR != lig) printf("\n" )}' $1.tmp >$1.out
mais est-ce que ce n'est pas un peu lourdingue ?