Convertir a mayúsculas o minúsculas una cadena de texto en Shell Script
Una de las opciones que tenemos al expandir las cadenas de texto en Bash es que podemos pasarlas fácilmente a mayúsculas o a minúsculas, todos o sólo el primer carácter.
${cadena^}
-> Pasa a mayúsculas el primer carácter de la cadena.
${cadena^^}
-> Pasa a mayúsculas toda la cadena.
${cadena,}
-> Pasa a minúsculas el primer carácter de la cadena.
${cadena,,}
-> Pasa a minúsculas toda la cadena.
Veamos un ejemplo:
#!/bin/bash string="HoLa" string2="mUndO" echo "$string con la primera letra en mayúsculas: ${string^}" echo "$string con todas las letras en mayúsculas: ${string^^}" echo "$string con la primera letra en minúsculas: ${string,}" echo "$string con todas las letras en minúsculas: ${string,,}" echo "" echo "$string2 con la primera letra en mayúsculas: ${string2^}" echo "$string2 con todas las letras en mayúsculas: ${string2^^}" echo "$string2 con la primera letra en minúsculas: ${string2,}" echo "$string2 con todas las letras en minúsculas: ${string2,,}"
Devuelve:
HoLa con la primera letra en mayúsculas: HoLa HoLa con todas las letras en mayúsculas: HOLA HoLa con la primera letra en minúsculas: hoLa HoLa con todas las letras en minúsculas: hola mUndO con la primera letra en mayúsculas: MUndO mUndO con todas las letras en mayúsculas: MUNDO mUndO con la primera letra en minúsculas: mUndO mUndO con todas las letras en minúsculas: mundo