Les dejo este pequeño script que tiene algunas cosillas útiles, como la utilización de contadores en bash fácilmente (a lo C).
#!/bin/bash dbuser=DB_USER dbhost=DB_HOST dbname=DB_NAME ln=1 # counter sql="SELECT ... FROM ... WHERE ... id=" cat content.csv | while read line; do id=`cut -d'|' -f1 <(echo $line)` if [ $ln -gt 1 ]; then mysql -u $dbuser -h $dbhost $dbname --batch --skip-column-names -e "$sql$id" | sed 's/\t/|/g' fi let ln+=1 donePor cada línea del archivo content.csv se toma la primera columna (como id - luego de la primera línea) y luego se ejecuta una query en BD utilizando este número; el resultado es formateado con columnas separadas por tuberías. Interesante: la forma en que se incrementa el contado con "let+=1".
OJO: Esto se pudo hacer con otro lenguaje de programación, ideal perl, pero como me da nota/mola bash lo hice de esta forma. Además, cabe acotar que esto es sólo algo puntual, no es una base de código que deberá mantenerse en el tiempo, de no ser así, recomendaría otra vía.
No hay comentarios:
Publicar un comentario