¿Cómo puedo cambiar las mayúsculas y minúsculas de los caracteres (de abajo a arriba y viceversa)? al mismo tiempo

¿Cómo puedo cambiar las mayúsculas y minúsculas de los caracteres (de abajo a arriba y viceversa)? al mismo tiempo

aporte

   > a='Vikas'
   > echo $a
    Vikas

mi salida requerida es

echo $a | <some command>

vIKAS

Respuesta1

$ echo Vikas | LC_ALL=C tr a-zA-Z A-Za-z
vIKAS

La utilidad trtraduce caracteres; se necesitan dos argumentos que representen conjuntos de caracteres; luego copia la entrada estándar a la salida estándar reemplazando cada carácter encontrado en el primer conjunto con el carácter correspondiente en el segundo conjunto. En esta aplicación, reemplaza letras minúsculas por letras mayúsculas y viceversa. Ver elpágina del manual de tr(1)para detalles y para otros procesamientos que trse puedan realizar.

Respuesta2

puedes usar el comando tr con las opciones [:upper:] y [:lower:], como esta:

echo "aBcDeF" |tr '[:upper:][:lower:]' '[:lower:][:upper:]'
AbCdEf

También puedes usar el comando sed (que significa 'Editor de secuencias'), así:

echo "abcd ABCD" |sed 'y/abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ/ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz/'

sed tiene más flexibilidad, significa que puedes definir cualquier asignación de caracteres. por ejemplo, puedes convertir números en letras de hackers con este comando:

echo "52065218802365" |sed 'y/0123456789/OIZEhSGLBP/'
SZOGSZIBBOZEGS

(referencia de mapeo de caracteres)

información relacionada