[bash] sed, zmian pierwszych liter wyrazu na duże

Bash, C, C++, Java, PHP, Ruby, GTK, Qt i wiele innych - wszystko tutaj.
bli8
Piegowaty Guziec
Piegowaty Guziec
Posty: 5
Rejestracja: 29 kwie 2010, 19:29
Płeć: Mężczyzna
Wersja Ubuntu: 10.04
Środowisko graficzne: GNOME
Architektura: x86

[bash] sed, zmian pierwszych liter wyrazu na duże

Post autor: bli8 »

Witam.
Chcę zmienić pierwsze litery wyrazów na duże i usunąć spacje przy pomocy sed. Oto moje wyrażenie:

Kod: Zaznacz cały

sed 's/\ [a-z]/[A-Z]/g' list.txt
Niestety nie do końca to działa poprawnie i nie wiem dlaczego. Dla przykładu dla tekstu:

Kod: Zaznacz cały

to jest przykladowy tekst
daje:

Kod: Zaznacz cały

to[A-Z]est[A-Z]rzykladowy[A-Z]ekst
zamiast:

Kod: Zaznacz cały

ToJestPrzykladowyTekst
Wie ktoś może co jest źle?

--- Problem udało mi się rozwiązać, użyłem do tego:

Kod: Zaznacz cały

sed -e 's/\ ./\U&/g;s/./\u&/;s/\ //g' list.txt
ODPOWIEDZ

Wróć do „Programowanie”

Kto jest online

Użytkownicy przeglądający to forum: Obecnie na forum nie ma żadnego zarejestrowanego użytkownika i 10 gości