Strona 1 z 1

[Solved] [Bash] Dodanie znaku nowej linii

: 03 maja 2011, 18:50
autor: yanan
Mam problem ze zmodyfikowaniem pliku XML. Po pobraniu wgetem pliku wszystkie "tagi" mam w jednej linii, ponadto zauważyłem, że po znaku ">" można nacisnąć klawisz enter i plik jest bardziej czytelny posiada także wcięcia. Próbowałem napisać skrypt, ale wynik nie jest zadawalający...

Kod: Zaznacz cały

#!/bin/bash
nazwa=`cat pogoda.xml`
nazwa=${nazwa//">"/">`echo -e \\n`"}
echo $nazwa > poprawione.xml


zamiast dodać znak nowej linii dopisuje znak n :shock:
Jak powinno być to zrealizowane?

Pozdrawiam

Re: [Bash] Dodanie znaku nowej linii

: 03 maja 2011, 21:37
autor: mszubart
Spróbuj zamiast `echo -e \\n` użyć `echo -e "\n"`

Kod: Zaznacz cały

mszubart@labtop:~$ echo `echo -e "\n"`

mszubart@labtop:~$ echo `echo -e \\n`
n
mszubart@labtop:~$ 

Re: [Bash] Dodanie znaku nowej linii

: 04 maja 2011, 20:26
autor: yanan
Nie działa wyświetla znak n, ale i tak pomyślałem sobie, że nie potrzebuje zamykania tagu więc koniec linii może kończyć się na znaku "/"
Zrobiłem to tak:

Kod: Zaznacz cały

cat plik1.xml |tr ">" "\n" > plik2.xml
Temat do zamknięcia.