Diferencia entre revisiones de «Comandos del shell»
Sin resumen de edición |
(→tr) |
||
Línea 29: | Línea 29: | ||
Traduce caracteres o los borra. | Traduce caracteres o los borra. | ||
Coge los caracteres de la entrada y los traduce en función de los parámetros. | Coge los caracteres de la entrada y los traduce en función de los parámetros. | ||
Hay que tener en cuenta que tr trabaja con la tabla de ASCII, por lo que podemos establecer un rango entre los caracteres a traducir: | |||
$ echo "Hola" | tr 'a-z' 'A-Z' | |||
Para pasar a mayúsculas o: | |||
$ echo "Mensaje" | tr '\!-~' 'P-~\!-O' | |||
Para cifrar según el cifrado Cesar todos los caracteres imprimibles del mensaje con un desplazamiento de 47. Por eso traduce de ! a ~ (todos los caracteres imprimibles de ASCII) por el rango de P a ~ seguido del rango de ! a O. | |||
=== Opciones === | === Opciones === | ||
* -c Saca el complemento de los caracteres seleccionados. | * -c Saca el complemento de los caracteres seleccionados. |
Revisión del 17:14 15 nov 2012
Cut
Sirve para cortar las líneas según un criterio.
Opciones
- -c Corta por caracteres, se puede establecer un principio y un final.
- -f Corta por columnas. El delimitar de las columnas se pone con -d
Las columnas se especifican separadas con comas (no puede reordenar), Se puede especificar un nargo poniendo N-M o -N o N- para decir que queremos desde el principio hasta N o desde N hasta el final.
Ejemplos
$ cut -d: -f1,3 /etc/passwd
Mostra la hora actual:
$ date | cut -c12-19
Obtener la MAC
$ ifconfig eth0 | grep HWaddr | cut -d “ “ -f 11
Dar formato a un teléfono:
$ echo '950000000' | cut --output-delimiter "-" -c1-2,3-5,6-
tr
Traduce caracteres o los borra. Coge los caracteres de la entrada y los traduce en función de los parámetros.
Hay que tener en cuenta que tr trabaja con la tabla de ASCII, por lo que podemos establecer un rango entre los caracteres a traducir:
$ echo "Hola" | tr 'a-z' 'A-Z'
Para pasar a mayúsculas o:
$ echo "Mensaje" | tr '\!-~' 'P-~\!-O'
Para cifrar según el cifrado Cesar todos los caracteres imprimibles del mensaje con un desplazamiento de 47. Por eso traduce de ! a ~ (todos los caracteres imprimibles de ASCII) por el rango de P a ~ seguido del rango de ! a O.
Opciones
- -c Saca el complemento de los caracteres seleccionados.
- -d Borra los caracteres seleccionados
- -s Borra repetidos. Este es muy útil para evitar dobles espacios o errores de sintaxis.
Ejemplos
Obtener letras aleatorias en minúsculas
$ head /dev/urandom | tr -dc "a-z"
En este ejemplo, borra con -d todos lo que no sea de a-z al poner el -c del complemento.