检查本地仓库与官方仓库软件版本区别的脚本
时间:2010-03-18
来源:互联网
自己编译打包的软件一多,自然是建个本地仓库然后用pacman来更新比较方便...
有些又要追新又要自己定制功能,怕被落下太多哦,所以就写这么个脚本来比较下不同仓库的版本区别了...
$localrepo改成本地仓库名就是...
运行结果看图...
有些又要追新又要自己定制功能,怕被落下太多哦,所以就写这么个脚本来比较下不同仓库的版本区别了...
$localrepo改成本地仓库名就是...
代码:
#!/usr/bin/perl -w ################################################### # Author: Hunt Xu - mhuntxu [AT] gmail [dot] com # Last modified: 2010-03-18 06:56 # Filename: pacup.pl # Description: depends on pacman #################################################### use strict; # config my $localrepo = "hunt"; my $color_old = "\e[31;1m"; my $color_new = "\e[32;1m"; my $color_end = "\e[0m"; my $command = "LANG=en_US.utf8 pacman"; # variables my $content; my $pacname; my $version; my $cmp; my $msg; # start chomp( my @localpac = `$command -Sql $localrepo` ); foreach (@localpac) { $pacname = $_; $content = `$command -Si $_`; @_ = ( $content =~ m[Repository.*?: \S+.*?Version.*?: \S+]sg ); if ( @_ > 1 ) { $_ = shift @_; m[Version.*?: (\S+)]s; $version = $1; foreach (@_) { m[Repository.*?: (\S+).*?Version.*?: (\S+)]sg; $cmp = `vercmp $version $2`; if ( $cmp == 0 ) { last; } elsif ( $cmp < 0) { $msg = $color_old."older".$color_end; } else { $msg = $color_new."newer".$color_end; } print "$pacname: $version, $msg than $1: $2;\n"; } } }
上传的图像
screenshot-2010-03-18-06-42-30.png (34.2 KB, 23 次查看) |
作者: huntxu 发布时间: 2010-03-18
perl 高手!
my $localrepo = "hunt";
能改成通用化的就好了,增加交互, 通过参数或者其他办法指定仓库。。。
my $localrepo = "hunt";
能改成通用化的就好了,增加交互, 通过参数或者其他办法指定仓库。。。
作者: carbonjiao 发布时间: 2010-03-18
强, 感谢分享
楼主不如建个google code之类的分享出来
现在我感觉就是需要多些编译包,管理仓库这类的工具
perl的看得晕,楼主能否大致讲解一下程序思路?
我现在还遇到个问题,自己将AUR上的打包放入本地仓库,结果AUR上有更新了,自己还不知道,因为yaourt -Su --aur 是检测不出来的,然后只好将本地仓库从pacmna.conf中去掉再yaourt -Su --aur 才能比较,不知各位有没有其他好办法。
楼主不如建个google code之类的分享出来
现在我感觉就是需要多些编译包,管理仓库这类的工具
perl的看得晕,楼主能否大致讲解一下程序思路?
我现在还遇到个问题,自己将AUR上的打包放入本地仓库,结果AUR上有更新了,自己还不知道,因为yaourt -Su --aur 是检测不出来的,然后只好将本地仓库从pacmna.conf中去掉再yaourt -Su --aur 才能比较,不知各位有没有其他好办法。
作者: axlrose 发布时间: 2010-03-18
相关阅读 更多
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28