Debian 依存図 (続き)
以下からの続きです。
dpkg-awk というものがあるのを知り、awk は awk で awk らしくってことで作ってみました。ただし、Pre-Depend は省略しています。しかも PNG というところは Zaurus でまだ SVG が見られる環境を構築していないだけです。しかも dot がメモリ不足で全部を処理できないので、awk に関するところだけ抜き出してみましょう。
$ dpkg-awk -f=/var/lib/dpkg/available "Package:.*" -- Package Depends > tmp_awk.txt $ gawk -f make_dot.awk tmp_awk.txt > tmp_dot.dot $ gawk 'BEGIN{print "digraph awk {"} /awk/{print} END{print "}"}' tmp_dot.dot > awk.dot $ dot -Tpng awk.dot -o awk.png
ここで使った make_dot.awk は以下のようなものです。
#! /usr/bin/gawk -f # make_dot.awk - create dot file from dpkg-awk results # input: dpkg-awk results # output: dot file BEGIN { RS = ""; print "digraph G {"; } { for (i = 4; i <= NF; i++) { if ($i !~ /[()|]/) { sub(/,/, "", $i); printf("\t\"%s\" -> \"%s\";\n", $2, $i); } } } END { print "}"; }
図が小さくて申し訳ありません。クリックすれば拡大されます。