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 tr
traduce 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 tr
se 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