spk annotate spk-find @ rev 144
Mini up in doc
author | Christophe Lincoln <pankso@slitaz.org> |
---|---|
date | Sun Apr 06 22:33:53 2014 +0200 (2014-04-06) |
parents | b70363c4c5e2 |
children |
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@142 | 18 cfile="/tmp/spk/count" |
pankso@142 | 19 mkdir -p $(dirname $cfile) |
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@142 | 30 $(boldify $(gettext "Usage:")) $name [package|--options] |
pankso@142 | 31 |
pankso@142 | 32 $(boldify $(gettext "Options:")) |
pankso@142 | 33 --short $(gettext "Short packages list format") |
pankso@135 | 34 |
pankso@135 | 35 EOT |
pankso@135 | 36 exit 0 |
pankso@135 | 37 } |
pankso@135 | 38 |
pankso@135 | 39 case "$1" in |
pankso@135 | 40 *help|usage) usage && exit 0 ;; |
pankso@135 | 41 esac |
pankso@135 | 42 |
pankso@135 | 43 newline |
pankso@135 | 44 boldify $(gettext "Spk find: $find") |
pankso@135 | 45 separator |
pankso@137 | 46 |
pankso@142 | 47 # --files or packages |
pankso@142 | 48 if [ "$files" ]; then |
pankso@142 | 49 type="Files" |
pankso@142 | 50 echo "TODO" |
pankso@142 | 51 else |
pankso@142 | 52 type="Packages" |
pankso@142 | 53 IFS="|" |
pankso@142 | 54 grep "$find" $pkgsdesc | while read pkg vers desc null |
pankso@142 | 55 do |
pankso@142 | 56 echo "$pkg" >> ${cfile} |
pankso@142 | 57 echo "$(colorize 34 $pkg)${vers# }" |
pankso@142 | 58 [ "$short" ] || echo " $desc" |
pankso@142 | 59 done |
pankso@142 | 60 unset IFS |
pankso@142 | 61 fi |
pankso@137 | 62 |
pankso@142 | 63 # Sep and stats |
pankso@142 | 64 if [ -f "$cfile" ]; then |
pankso@142 | 65 count=$(cat $cfile | wc -l) |
pankso@137 | 66 color=32 |
pankso@137 | 67 else |
pankso@137 | 68 count=0 |
pankso@137 | 69 color=31 |
pankso@137 | 70 fi |
pankso@135 | 71 separator |
pankso@142 | 72 boldify "$type found: $(colorize $color $count)" && newline |
pankso@142 | 73 |
pankso@142 | 74 rm -rf ${cfile} |
pankso@135 | 75 exit 0 |