[RISOLTO] Solo prima lettera maiuscola

Linguaggi di programmazione: php, perl, python, C, bash e tutti gli altri.
Avatar utente
ender
Scoppiettante Seguace
Scoppiettante Seguace
Messaggi: 348
Iscrizione: venerdì 12 gennaio 2007, 17:02
Località: Lecce

[RISOLTO] Solo prima lettera maiuscola

Messaggio da ender »

Salve.
Ho uno scriptone molto lungo dove all'inizio vengono definite delle variabili lette in input.
Ho la variabile $nome e $cognome che quando lo script lo richiede l'operatore inserisce tutte in minuscolo:

Codice: Seleziona tutto

echo -n "Inserisci nome: "
read nome

echo -n "Inserisci cognome: "
read cognome

echo $nome $cog

...
...

invia_email()
{
        /bin/mail -c "$EMAIL2" -s "Utenza creata a $nome $cognome" $EMAIL < $WORK_DIR/$EMAIL_MSG
}

Ora, l'operatore scrive, per esempio, prima 'mario' e poi 'rossi' ,quindi tutto in minuscolo. Nella prima echo mi restituirà: mario rossi
Ho bisogno invece che quando lo script manda la mail, nell'oggetto mi scriva:

"Utenza creata a Mario Rossi", quindi con le iniziali delle variabili in maiuscolo.

Come posso fare?

Grazie mille
Ultima modifica di ender il lunedì 6 febbraio 2017, 15:31, modificato 1 volta in totale.
Because Micro$oft is for Capitalists running DOS!!!
Avatar utente
toro2k
Prode Principiante
Messaggi: 148
Iscrizione: lunedì 30 gennaio 2012, 12:56
Località: Savona

Re: Solo prima lettera maiuscola

Messaggio da toro2k »

In bash puoi fare così:

Codice: Seleziona tutto

echo "${nome^} ${cognome^}"
Senza bash diventa un po' più complicato, di seguito una possibile soluzione usanto sed:

Codice: Seleziona tutto

nome=$(echo "$nome" | sed 's/^./\u&/')
Software is meant to be soft!
Avatar utente
ender
Scoppiettante Seguace
Scoppiettante Seguace
Messaggi: 348
Iscrizione: venerdì 12 gennaio 2007, 17:02
Località: Lecce

Re: Solo prima lettera maiuscola

Messaggio da ender »

Tre parole: sei un grande !!!

Grazie mille. Avevo pensato ad tr upper/case ma dovevo metterci dentro il cut e non mi veniva.
Più semplice di così si muore.

Ciao e grazie ancora.
Because Micro$oft is for Capitalists running DOS!!!
Scrivi risposta

Ritorna a “Programmazione”

Chi c’è in linea

Visualizzano questa sezione: 0 utenti iscritti e 5 ospiti