Download - Comando cut
![Page 2: Comando cut](https://reader036.vdocuments.co/reader036/viewer/2022082606/5573be3bd8b42a6d618b4c8e/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.vdocuments.co/reader036/viewer/2022082606/5573be3bd8b42a6d618b4c8e/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.vdocuments.co/reader036/viewer/2022082606/5573be3bd8b42a6d618b4c8e/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.vdocuments.co/reader036/viewer/2022082606/5573be3bd8b42a6d618b4c8e/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.vdocuments.co/reader036/viewer/2022082606/5573be3bd8b42a6d618b4c8e/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.vdocuments.co/reader036/viewer/2022082606/5573be3bd8b42a6d618b4c8e/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.vdocuments.co/reader036/viewer/2022082606/5573be3bd8b42a6d618b4c8e/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.vdocuments.co/reader036/viewer/2022082606/5573be3bd8b42a6d618b4c8e/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.vdocuments.co/reader036/viewer/2022082606/5573be3bd8b42a6d618b4c8e/html5/thumbnails/10.jpg)
CUT•El comando cut se usa para cortar campos 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.vdocuments.co/reader036/viewer/2022082606/5573be3bd8b42a6d618b4c8e/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.vdocuments.co/reader036/viewer/2022082606/5573be3bd8b42a6d618b4c8e/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:ʽ• echo “el home del usuario es: $variable”
![Page 13: Comando cut](https://reader036.vdocuments.co/reader036/viewer/2022082606/5573be3bd8b42a6d618b4c8e/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.vdocuments.co/reader036/viewer/2022082606/5573be3bd8b42a6d618b4c8e/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