?>/script>'; } ?> [Solved & Script] ¿Cómo saber si se ha ejecutado opkg update recientemente? Widgets Magazine

Autor Tema: [Solved & Script] ¿Cómo saber si se ha ejecutado opkg update recientemente?  (Leído 2817 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado peperfus

  • ******
  • Mensajes: 251
Hola, pues eso.

Sería para utilizarlo en scripts y en caso de haber actualizado la lista de software de los repositorios recientemente, no volver a hacerlo.

¿Alguien sabe dónde se guarda esa información?

Gracias.
« Última modificación: 24-01-2020, 23:33 (Viernes) por peperfus »

Desconectado peperfus

  • ******
  • Mensajes: 251
Re:¿Cómo saber si se ha ejecutado opkg update recientemente?
« Respuesta #1 en: 15-01-2020, 19:24 (Miércoles) »
Lo he encontrado. Se guarda en el directorio /tmp/opkg-lists
Ahora me falta conseguir sacar la fecha de ese directorio para compararla con la actual. En cuanto lo tenga, lo pongo.

Desconectado peperfus

  • ******
  • Mensajes: 251
Re:¿Cómo saber si se ha ejecutado opkg update recientemente?
« Respuesta #2 en: 16-01-2020, 12:48 (Jueves) »
Cositas frescas !!

Ya sé que estas cosas os parecen chorradas a los expertos y a los más entendidos en linux, pero para nosotros los novatillos que (como se suele decir) empezamos a hacer nuestros primeros pinitos, esto es oro.  ;D

Script que ejecuta opkg update sólo si hace mucho tiempo que no se ha ejecutado. Esto es bueno porque evita updates innecesarios:
Requiere el paquete coreutils-stat

W A R N I N G - A V I S O
Citar
DISCLAIMER - EXCENCIÓN DE RESPONSABILIDAD.
El presente tutorial / manual / howto, código fuente / instrucciones o texto en general, carece de cualquier garantía y sólo está pensado como uso a modo educativo, de aprendizaje, experimentación, investigación y desarrollo.
Puede contener errores, así como ambigüedades o falta de información precisa. En cualquier caso, las sugerencias, comentarios, correcciones y críticas constructivas serán siempre bienvenidos.
El autor rechaza cualquier responsabilidad por cualquier tipo de daño, ya sea directo o indirecto, a propios o a terceros, accidental o intencionado que la aplicación del siguiente texto pueda ocasionar.
Su uso está totalmente desaconsejado en entornos de producción, a no ser, bajo la estricta supervisión de un profesional debidamente cualificado y bajo su única y exclusiva responsabilidad.
La aplicación total o parcial del presente texto en cualquier sistema, implica la total aceptación de estas condiciones.
Peperfus.

Ajustar al gusto, o según sea necesario:
Código: [Seleccionar]
#!/bin/sh

# Requiere comando stat.
# Se puede instalar con el paquete: coreutils-stat

HORA=3600
DIA=86400
SEMANA=604800
QUINCENA=1296000

ULTIMOUPDATE=$(stat --format=%Y /tmp/opkg-lists/openwrt_base)
AHORA=$(date +%s)
DIFERENCIA=$(($AHORA-$ULTIMOUPDATE))

if [ ! -f /tmp/opkg-lists/openwrt_base ] || [ $DIFERENCIA -gt $SEMANA ]; then opkg update;
fi
« Última modificación: 16-01-2020, 13:04 (Jueves) por peperfus »