spk annotate spk-find @ rev 137
spk-find: fix count
author | Christophe Lincoln <pankso@slitaz.org> |
---|---|
date | Sun Mar 30 18:34:55 2014 +0200 (2014-03-30) |
parents | aded92d8f7bf |
children | aeb1c73f12f3 |
rev | line source |
---|---|
pankso@135 | 1 #!/bin/sh |
pankso@135 | 2 # |
pankso@135 | 3 # Spk-find - Find/search SliTaz packages and files. Read the README before |
pankso@135 | 4 # adding or modifying any code in spk! |
pankso@135 | 5 # |
pankso@135 | 6 # Copyright (C) SliTaz GNU/Linux - BSD License |
pankso@135 | 7 # Author: See AUTHORS files |
pankso@135 | 8 # |
pankso@135 | 9 . /usr/lib/slitaz/libspk.sh |
pankso@135 | 10 |
pankso@135 | 11 # |
paul@136 | 12 # Quick coded tool to have a simple find/search packages tool for people |
paul@136 | 13 # using spk toolkit. TODO: find files, find in pkg desc for pattern, display |
pankso@135 | 14 # status (installed or not). |
pankso@135 | 15 # |
pankso@135 | 16 |
pankso@135 | 17 find="$1" |
pankso@135 | 18 count="/tmp/spk/count" |
pankso@135 | 19 mkdir -p $(dirname $count) |
pankso@135 | 20 |
pankso@135 | 21 # |
pankso@135 | 22 # Functions |
pankso@135 | 23 # |
pankso@135 | 24 |
pankso@135 | 25 # Help and usage |
pankso@135 | 26 usage() { |
pankso@135 | 27 name=$(basename $0) |
pankso@135 | 28 cat << EOT |
pankso@135 | 29 |
pankso@135 | 30 $(boldify $(gettext "Usage:")) $name [package] |
pankso@135 | 31 |
pankso@135 | 32 EOT |
pankso@135 | 33 exit 0 |
pankso@135 | 34 } |
pankso@135 | 35 |
pankso@135 | 36 case "$1" in |
pankso@135 | 37 *help|usage) usage && exit 0 ;; |
pankso@135 | 38 esac |
pankso@135 | 39 |
pankso@135 | 40 newline |
pankso@135 | 41 boldify $(gettext "Spk find: $find") |
pankso@135 | 42 separator |
pankso@137 | 43 |
pankso@135 | 44 IFS="|" |
pankso@135 | 45 grep "$find" $pkgsdesc | while read pkg vers desc null |
pankso@135 | 46 do |
pankso@135 | 47 echo "$pkg" >> $count |
pankso@135 | 48 echo -n "$pkg"; indent 16 "$desc" |
pankso@135 | 49 done |
pankso@135 | 50 unset IFS |
pankso@137 | 51 |
pankso@137 | 52 if [ -f "$count" ]; then |
pankso@137 | 53 count=$(cat $count | wc -l) |
pankso@137 | 54 color=32 |
pankso@137 | 55 else |
pankso@137 | 56 count=0 |
pankso@137 | 57 color=31 |
pankso@137 | 58 fi |
pankso@135 | 59 separator |
pankso@137 | 60 boldify "Packages found: $(colorize $color $count)" && newline |
pankso@135 | 61 rm -rf $count |
pankso@135 | 62 exit 0 |