Comando cut
-
Upload
madelon-garcia -
Category
Education
-
view
39 -
download
0
Transcript of Comando cut
![Page 1: Comando cut](https://reader036.fdocuments.ec/reader036/viewer/2022083114/58edcfb41a28ab164f8b4723/html5/thumbnails/1.jpg)
PROF. PABLO MACÓNhttp:/ /pablomacon.wix.com/
homeprofemacon@gmail .com
CUT
![Page 2: Comando cut](https://reader036.fdocuments.ec/reader036/viewer/2022083114/58edcfb41a28ab164f8b4723/html5/thumbnails/2.jpg)
REGISTROS Y CAMPOS•Un registro (ya lo vimos) es una fila en una base de datos• Imaginemos nuestra base de datos de una biblioteca:
![Page 3: Comando cut](https://reader036.fdocuments.ec/reader036/viewer/2022083114/58edcfb41a28ab164f8b4723/html5/thumbnails/3.jpg)
REGISTROS Y CAMPOS•Tendríamos una tabla libros• ISBN (IDENTIFICADOR ÚNICO)• TITULO• AUTOR• EDITORIAL• AÑO DE PUBLICACION
![Page 4: Comando cut](https://reader036.fdocuments.ec/reader036/viewer/2022083114/58edcfb41a28ab164f8b4723/html5/thumbnails/4.jpg)
REGISTROS Y CAMPOS•En GNU/LINUX nosotros ya hemos trabajado con este tipo de archivos, en general utilizamos un modelo así:• ISBN:Título:Autor:Editorial:Año•Separamos los campos (columnas) con el símbolo “:”
![Page 5: Comando cut](https://reader036.fdocuments.ec/reader036/viewer/2022083114/58edcfb41a28ab164f8b4723/html5/thumbnails/5.jpg)
REGISTROS Y CAMPOS• Entonces un archivo con la tabla libros se vería así si lo mostráramos en pantalla:
• 978-3-16-148410-0:Rayuela:Cortazar,Julio:Sudamericana:1963• 978-2-45-123444-8:El Aleph:Borges,Jorge Luis:Planeta:1949• En mySQL haríamos una sentencia SELECT para traer un registro:• SELECT * FROM libros WHERE ISBN = 978-3-16-148410-
0
![Page 6: Comando cut](https://reader036.fdocuments.ec/reader036/viewer/2022083114/58edcfb41a28ab164f8b4723/html5/thumbnails/6.jpg)
GREP•La clase pasada vimos que nosotros en LINUX tenemos el filtro grep para hacer un select•Grep nos trae toda la línea que coincide con el patrón de búsqueda• grep 978-3-16-148410-0 libros
![Page 7: Comando cut](https://reader036.fdocuments.ec/reader036/viewer/2022083114/58edcfb41a28ab164f8b4723/html5/thumbnails/7.jpg)
GREP• O todos los libros de Cortázar:• grep –i Cortazar libros
Ahora bien, la biblioteca presta esos mismos libros a usuarios que están en otra tablacédula:apellido:nombre:fechaNacimiento:dirección:teléfono
![Page 8: Comando cut](https://reader036.fdocuments.ec/reader036/viewer/2022083114/58edcfb41a28ab164f8b4723/html5/thumbnails/8.jpg)
GREP• para realizar un préstamo, nosotros necesitamos crear una tabla que relacione estas otras dos, que nos guarde cédula del usuario, ISBN del libro, fecha préstamo, fecha devolución y un booleano devuelto que nos indique precisamente si el usuario devolvió el libro.
![Page 9: Comando cut](https://reader036.fdocuments.ec/reader036/viewer/2022083114/58edcfb41a28ab164f8b4723/html5/thumbnails/9.jpg)
GREP•entonces de las tablas anteriores nosotros no queremos que nos devuelta todo el registro, toda la fila sino una de las columnas•grep no nos sirve para eso
![Page 10: Comando cut](https://reader036.fdocuments.ec/reader036/viewer/2022083114/58edcfb41a28ab164f8b4723/html5/thumbnails/10.jpg)
CUT•El comando cut se usa para cortar campos (columnas) seleccionados de cada línea de un archivo. Utiliza delimitadores para determinar dónde dividir los campos.•Sintaxis: • cut <-opciones> archivo
![Page 11: Comando cut](https://reader036.fdocuments.ec/reader036/viewer/2022083114/58edcfb41a28ab164f8b4723/html5/thumbnails/11.jpg)
CUT• Opciones:• -f (número de campo) el primero a la izquierda es el campo -f1, el segundo –f2, etc.• -d (carácter delimitador) puede ser cualquier cadena• Los más utilizados
• : • ; • espacio
![Page 12: Comando cut](https://reader036.fdocuments.ec/reader036/viewer/2022083114/58edcfb41a28ab164f8b4723/html5/thumbnails/12.jpg)
CUT•Ejemplos:• cut -f1 -d: libros• cut -f1 -d: /etc/passwd • grep -i <usuario> /etc/passwd | cut -f1 -d: • variable= ̔grep –i pablo.macon /etc/passwd | cut -f6 -d:ʽ
![Page 13: Comando cut](https://reader036.fdocuments.ec/reader036/viewer/2022083114/58edcfb41a28ab164f8b4723/html5/thumbnails/13.jpg)
CUT•Ejemplos: en el caso de los libros cómo haríamos para crear un registro en la tabla prestamos?•Primero, sabiendo el apellido y nombre del usuario haríamos:•usuario= $(grep -i macon usuarios | grep -i Pablo |cut -d: -f1)
![Page 14: Comando cut](https://reader036.fdocuments.ec/reader036/viewer/2022083114/58edcfb41a28ab164f8b4723/html5/thumbnails/14.jpg)
CUT• Ejemplos: en el caso de los libros cómo
haríamos para crear un registro en la tabla prestamos?• entrega=`date +%d/%m/%y`• retorno=`date –d “5 days” +%d/%m%y`• devuelto=false• echo $libro:$usuario:$entrega:$retorno:
$devuelto >> prestamos