yum infoが遅すぎる

ローカルのDBにある情報を表示するだけのyum infoコマンド。やることは単純なのに、遅すぎる。

例えば、以下のようなスクリプトならだいぶ高速に表示できるけど、どうかな。

#! /bin/sh

format_x(){
  nm=$(basename $(dirname $1))
  awk -F\| 'BEGIN{RS="bobobobobobobobo";}{
  print "Name    :", $3;
  print "Arch    :", $4;
  print "Version :", $5;
  print "Release :", $6;
  print "Size    :", $21"(pkg)", $22"(ins)", $23"(arc)";
  print "License :", $13;
  print "Repo    :", "'$nm'";
  print "Summary :", $8;
  print "Description:";
  print $9, "\n";
}'
}

for name; do
  for i in /var/cache/yum/*/primary.xml.gz.sqlite /var/cache/yum/*/primary.sqlite ; do
    [ -f "$i" ] || continue
    sqlite3 $i "select * from packages where name LIKE '$name'" | format_x $i
  done
done

自分のところではyuminfo.shという名前で呼び出せるようにしてあります。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です