D'abord, merci d'avance pour vos aides.Script shell Unix pour supprimer les nouvelles lignes précédées de caractères spécifiques
Je dois remplacer les nouvelles lignes (\ n) par un espace dans un fichier unix lorsqu'elles ne sont pas précédées de ';'.
Par exemple, si vous avez dans un quelque chose unix comme:
TestFields;TestFields2
;TestFields3;TestFields4
La sortie doit être:
TestFields;TestFields2 ;TestFields3;TestFields4
Je me sers d'une commande sed comme ça:
sed ':a;N;$!ba;s/[^;]\n/ /g'
Le problème est que cette commande remplacera aussi le caractère qui est avant \ n donc mon outpu est comme:
TestFields;TestFields ;TestFields3;TestFields4
Je lâche le « 2 » dans le « TestFields2 » .. Quelqu'un a une idée sur la façon de garder mon caractère, mais remplacer le \ n?
'sed ': a; N; $! Ba; s/\ ([^;] \) \ n/\ 1/g'' – ghoti