Skip to content

Instantly share code, notes, and snippets.

@pmolina
Created May 8, 2021 00:41
Show Gist options
  • Save pmolina/25210d155c4d33edbb38c46ef72488ee to your computer and use it in GitHub Desktop.
Save pmolina/25210d155c4d33edbb38c46ef72488ee to your computer and use it in GitHub Desktop.
Morosos del sistema financiero argentino
cat 24DSF.txt | grep -E "^(\s|\d){18}[3|4|5]" | cut -c8- | awk '{print substr($1,1,11) "\t" $2}' | sed "s/,/./g" | awk '{a[$1] += $2} END{for (i in a) print i, a[i]}' | sort -k 2 -n -r > mayores_deudores.txt
# cat 24DSF.txt
# Imprime en terminal el contenido del archivo.
#
# grep -E "^(\s|\d){18}[3|4|5]"
# Trae parte de la línea que me interesa y se fija que haya deuda (3 situación "con problemas" hasta 5 "irrecuperable"), 0 no me interesa.
# IMPORTANTE: morosos importantes son 3|4|5.
#
# cut -c8-
# Elimina cierta data que no me interesa de la línea.
#
# awk '{print substr($1,1,11) "\t" $2}'
# Me imprime el identificador de persona (física o jurídica) y la deuda actual de forma tabulada.
#
# sed "s/,/./g"
# Reemplaza la coma por un punto en la deuda.
#
# awk '{a[$1] += $2} END{for (i in a) print i, a[i]}'
# La verdadera magia. Suma la deuda teniendo en cuenta el identificador de persona.
#
# sort -k 2 -n -r > mayores_deudores.txt
# Ordena el archivo por la columna de deuda (la segunda) de mayor a menor. Escupe el resultado en un archivo.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment