tazpkg rev 98
add search-file --mirror
author | Pascal Bellard <pascal.bellard@slitaz.org> |
---|---|
date | Thu May 22 16:30:16 2008 +0000 (2008-05-22) |
parents | be31f9fb294a |
children | 404417fa9f93 |
files | tazpkg |
line diff
1.1 --- a/tazpkg Tue May 20 10:17:33 2008 +0000 1.2 +++ b/tazpkg Thu May 22 16:30:16 2008 +0000 1.3 @@ -770,6 +770,25 @@ 1.4 echo "" 1.5 echo -e "\033[1mSearch result for file :\033[0m $2" 1.6 echo "================================================================================" 1.7 + 1.8 + if [ "$3" == "--mirror" ]; then 1.9 + 1.10 + unlzma -c $LOCALSTATE/files.list.lzma | grep -- ".*:.*$2" | awk ' 1.11 + BEGIN { last="" } 1.12 + { 1.13 + pkg=substr($0,0,index($0,":")-1); 1.14 + file=substr($0,index($0,":")+2); 1.15 + if (last != pkg) { 1.16 + last = pkg; 1.17 + printf("\n%c[1mPackage %s :%c[0m\n",27,pkg,27); 1.18 + } 1.19 + printf("%s\n",file); 1.20 + }' 1.21 + match=`unlzma -c $LOCALSTATE/files.list.lzma | \ 1.22 + grep -- ".*:.*$2" | wc -l` 1.23 + 1.24 + else 1.25 + 1.26 # Check all pkg files.list in search match with specify the package 1.27 # name and the full path to the file(s). 1.28 for pkg in $INSTALLED/* 1.29 @@ -783,6 +802,9 @@ 1.30 match=$(($match+$files)) 1.31 fi 1.32 done 1.33 + 1.34 + fi 1.35 + 1.36 if [ "$match" = "" ]; then 1.37 echo "0 file found for : $2" 1.38 echo "" 1.39 @@ -1068,11 +1090,13 @@ 1.40 mv -f packages.desc packages.desc.bak 2>/dev/null 1.41 mv -f packages.txt packages.txt.bak 2>/dev/null 1.42 mv -f packages.list packages.list.bak 2>/dev/null 1.43 + mv -f files.list.lzma files.list.lzma.bak 2> /dev/nul 1.44 status 1.45 fi 1.46 download packages.desc 1.47 download packages.txt 1.48 download packages.list 1.49 + download files.list.lzma 1.50 if [ -f "$LOCALSTATE/packages.list.bak" ]; then 1.51 diff -u packages.list.bak packages.list | grep ^+[a-z] > packages.diff 1.52 sed -i s/+// packages.diff