是否可以编写一个脚本来显示 X 时间内未更新的软件包?

是否可以编写一个脚本来显示 X 时间内未更新的软件包?

正如标题所述。我想知道是否可以编写一个脚本,仅显示 X 时间(比如 6 个月)内未更新的软件包。

我想要这样的脚本的原因是检查包是否未维护。我使用的是 Fedora 36,但我认为这对于使用 PPA 发行版(例如 Ubuntu、Debian)的人来说特别有用,因为未维护的软件包可能会带来安全风险。

不幸的是,我没有能力编写这样的脚本,但如果有人能在正确的方向上推动我,我会非常乐意尝试自己编写它。

答案1

对于转速:

#! /bin/bash

utnow=$(date +%s)

for i in `rpm -qa`; do
   uti=`rpm -q --queryformat '%{INSTALLTIME}' $i`
   months=$(( (utnow-uti)/86400/30 ))
   if [ $months -ge 6 ]; then
       echo "$i: is $months months old"
   fi
done
shared-mime-info-2.1-3.fc35.x86_64: is 10 months old
kdocker-5.3-4.fc35.x86_64: is 10 months old
irqbalance-1.7.0-8.fc35.x86_64: is 10 months old
libmodulemd1-1.8.16-6.fc35.x86_64: is 10 months old

相关内容