From 3294039a00f3aa65181ed23518dc5c73e0201268 Mon Sep 17 00:00:00 2001 From: Dave Reisner Date: Sun, 17 Jul 2011 11:04:03 -0400 Subject: contrib/paclog-pkglist: rework as bash wrapping awk Avoid some pain in awk's limited handling of command line arguments by wrapping this in a Bash script. We also default to @localstatedir@/log/pacman.log when no args are specified, meaning that -h or --help is required to get the help message. Signed-off-by: Dave Reisner Signed-off-by: Dan McGee --- contrib/paclog-pkglist | 57 -------------------------------------------------- 1 file changed, 57 deletions(-) delete mode 100755 contrib/paclog-pkglist (limited to 'contrib/paclog-pkglist') diff --git a/contrib/paclog-pkglist b/contrib/paclog-pkglist deleted file mode 100755 index 2c66e634..00000000 --- a/contrib/paclog-pkglist +++ /dev/null @@ -1,57 +0,0 @@ -#!/bin/awk -f -# -# paclog-pkglist - Parse a log file into a list of currently installed packages -# -# Copyright (C) 2011 Dave Reisner -# -# This program is free software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License -# as published by the Free Software Foundation; either version 2 -# of the License, or (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program. If not, see . - -BEGIN { - if (ARGC < 2) { - printf "usage: log2pkglist \n" - printf "example: log2pkglist /var/log/pacman.log\n" - exit - } -} - -{ - action = $3 - pkgname = $4 - pkgver = $5 - upgver = $7 -} - -NF == 5 && action == "installed" { - gsub(/[()]/, "", pkgver) - pkg[pkgname] = pkgver - next -} - -NF == 7 && action == "upgraded" { - sub(/\)/, "", upgver) - pkg[pkgname] = upgver - next -} - -NF == 5 && action == "removed" { - pkg[pkgname] = -1 -} - -END { - for (i in pkg) { - if (pkg[i] != -1) { - printf "%s %s\n",i,pkg[i] - } - } -} -- cgit v1.2.3-70-g09d2