#!/bin/bash # Cache the file for 30 minutes # If you want to override this, put the command in cron. # We cache because it is a 1sec delay, which is painful for the poller if [ -x /usr/bin/dpkg-query ]; then DATE=$(date +%s) FILE=/tmp/agent-local-dpkg if [ ! -e $FILE ]; then dpkg-query -W --showformat='${Status} ${Package} ${Version} ${Architecture} ${Installed-Size}\n'|grep " installed "|cut -d\ -f4- > $FILE fi FILEMTIME=$(stat -c %Y $FILE) FILEAGE=$(($DATE-$FILEMTIME)) if [ $FILEAGE -gt 1800 ]; then dpkg-query -W --showformat='${Status} ${Package} ${Version} ${Architecture} ${Installed-Size}\n'|grep " installed "|cut -d\ -f4- > $FILE fi echo "<<>>" cat $FILE fi