Chcę zapisać do pliku niektóre wstępnie zdefiniowane teksty:
text="this is line one\n
this is line two\n
this is line three"
echo -e $text > filename
Spodziewam się czegoś takiego:
this is line one
this is line two
this is line three
Ale mam to:
this is line one
this is line two
this is line three
Jestem pewien, że po każdym nie ma miejsca \n, ale jak powstaje dodatkowa przestrzeń?
\nna każdej linii, już nacisnąłeś nową linię, aby przejść do nowej linii
\n. Więc dlaczego wstawiłeś następny wiersz w nowym wierszu? Po prostutext="this is line one\nthis is line two\nthis is line three"
\nna końcu każdego wiersza powoduje, że wszystkie dane wyjściowe działają razem w jednym wierszu.
"$text"linii echa ma kluczowe znaczenie. Bez nich żadna z nowych linii (zarówno dosłowna, jak i „\ n”) nie działa. Z nimi wszyscy tak robią.
text="this is line one\nthis is line two\nthis is line three"ten sam wiersz ..? (bez żadnego wpisu)