Skip to content

Instantly share code, notes, and snippets.

@knbknb
Last active May 18, 2023 10:05
Show Gist options
  • Save knbknb/c000739eaa6c7aa558c05cc0f216ad03 to your computer and use it in GitHub Desktop.
Save knbknb/c000739eaa6c7aa558c05cc0f216ad03 to your computer and use it in GitHub Desktop.
bash: snaps-list-updates-recent.sh
#!/usr/bin/env bash
# snaps-list-updates-recent.sh
# checks all installed snaps by name,
# lists them by latest update date.
tempfile=/tmp/snaps-$(date +%Y+%m-%d).txt
rm -f $tempfile
# can take a few seconds to run.
# therefore write to temp file.
snap_names=$(snap list \
| cut -d" " -f 1 \
| grep -v Name)
echo Name Version Refresh_Date > $tempfile
for name in $snap_names; do
snap_version_tracked=$(snap info $name | grep tracking: | perl -pE 's/tracking:\s*//g')
snap_refresh_date=$(snap info $name --abs-time | grep refresh-date: )
# format ISO-date to YYYY-MM-DD
snap_refresh_date=$(echo $snap_refresh_date | perl -pE 's/refresh-date:\s*//g' | perl -pE 's/T.+$//')
echo $name $snap_version_tracked $snap_refresh_date >> $tempfile
done
# sort by date ascending and display.
csvsort $tempfile -c3,1 | csvlook
#rm -f $tempfile #optional
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment