💾 Archived View for sl1200.dystopic.world › art › top_20.gmi captured on 2023-01-29 at 02:34:18. Gemini links have been rewritten to link to archived content

View Raw

More Information

-=-=-=-=-=-=-

Cómo publicar un listado con los artículos más visitados de tu cápsula

2022-11-01

#bash #gemini #agate #journalctl

El objetivo es facilitar al visitante un listado con los 20 artículos más visitados, para ello tendremos que:

	sudo usermod -a -G systemd-journal usuario
	journalctl --since "1 min ago" | grep 'agate-server' | sed '/feed.gmi/d' | sed '/atom.xml/d' | sed '/error/d' | sed '/robots/d' | sed '/top_visitas/d' | cut -d " " -f 12 | sed 's/\"//g' | cut -b 31- | awk 'NF' >> /home/usuario/bin/visitas/logvisitas

Como ves extraigo los logs de agate-server y elimino los logs generados por visitas correspondientes a feed.gmi, atom.xml, robots, errores y las propias del listado de top_visitas que quiero generar, también borro líneas en blanco, por algo que no entiendo de vez en cuando sale una.

	sort /home/usuario/bin/visitas/logvisitas  | uniq -c | sort -nr | head -n 20 > /home/usuario/bin/visitas/listado
	less /home/usuario/bin/visitas/listado | tail -n +2 | head -n 20 > /home/usuario/gemini/content/top_visitas
	less /home/usuario/gemini/content/top_visitas | sed -r 's/(.*)( )//g' | sed 's/^/=>/' > /home/usuario/gemini/content/top_visitas.gmi

Una vez tengas el script personalizando las rutas y filtros, lo haces ejecutable con "chmod+x" y lo programas con "crontab -e". Como has visto pongo siempre las rutas absolutas, es necesario si vas a programar el script con cron.

This work by SL1200 is licensed under CC BY 4.0

◄ BACK

🏠 Home