[ vidonk @ 11.09.2019. 16:16 ] @
Pozdrav forumaši,
Imam listu riječi gdje svaka riječ počinje malim slovom i ja bih želio da to promijenim tako da svaka riječ i fajla počinje sa velikim slovom, jel moguće to uraditi u bashu ?
[ Texas Instruments @ 11.09.2019. 17:44 ] @
https://linuxhint.com/bash_lowercase_uppercase_strings/
[ Panta_ @ 12.09.2019. 06:38 ] @
Bash:
Code (bash):
while read -r -a words;do echo ${words[@]^};done <<<"lorem ipsum dolor sit amet, consectetur adipiscing elit."

Lorem Ipsum Dolor Sit Amet, Consectetur Adipiscing Elit.


Sed:
Code:
sed 's/[[:alpha:]]\+/\u&/g' <<<"lorem ipsum dolor sit amet, consectetur adipiscing elit."

Lorem Ipsum Dolor Sit Amet, Consectetur Adipiscing Elit.


Awk:
Code (awk):
awk '{for (i=1; i<=NF; ++i) {$i=toupper(substr($i,1,1)) tolower(substr($i,2));} print}' <<<"lorem ipsum dolor sit amet, consectetur adipiscing elit."

Lorem Ipsum Dolor Sit Amet, Consectetur Adipiscing Elit.


Zameni <<< sa <tvoj_file >nov_file, na primer:

Code:
sed 's/[[:alpha:]]\+/\u&/g' <tvoj_file >nov_file
[ vidonk @ 12.09.2019. 12:00 ] @
Odlično hvala @Panta_
[ ineve74 @ 12.09.2019. 15:09 ] @
Procitaj how to za gawk program i verovatno ti sine kako da to uradis
[ lega99 @ 15.09.2019. 21:34 ] @
@vidonk,
Imas tih primera koliko hoces na netu, jer to recnik za hachcat? :D
Code:
sed -e "s/\b\(.\)/\u\1/g" ulaz.txt > izlaz.txt

[ Panta_ @ 16.09.2019. 14:24 ] @
Citat:
Imas tih primera koliko hoces na netu

sed -e "s/\b\(.\)/\u\1/g" ulaz.txt > izlaz.txt

I ti mu ponudiš najgori. ;)

Znaš li šta tačka predstavlja? Bilo koji karakter. U tvom primeru, bilo koji karakter u opsegu (\b - word boundary) između \w (word) i \W (non-word) karaktera.

Uzmi neki veći fajl sa rečima pa testiraj svoj primer.

A, možeš i online (10000 reči):

(20000 matches, 147904 steps, ~264ms) VS (10000 matches, 32284 steps, ~73ms)

Kao što možeš da vidiš iz primera [[:alpha:]]+ regex traži samo reči. Plus predstavlja jedan ili više (u ovom slučaju alpha) karaktera, dakle traži koliko god je moguće alpha znakova u nizu, zbog čega ga i nazivaju "greedy" kvantifikatorom.
[ lega99 @ 17.09.2019. 18:27 ] @
Ja samo ovo nasao kao postavljanje Capital tj. velikog slova na pocetak reci. Nisam trazio mnogo, mene je interesovalo samo da postavi veliko slovo a podrazumevalo se da bude rec tj. ime.
Imam ja jos primera, neki su i tvoji, zapisem da se nadje. Nisam ja bas strucnjak, ja sam "resavska skola" skrpim upit na google kad mi zatreba a kad ne ukapiram onda kukam ovde :)
Normalno sad cu i ovo tvoje da zapise da se nadje.