ポート経由でインストールされたパッケージに関する情報を収集する、perl で書かれたスクリプトがあります。残念ながら、ポートのバージョンを判断する機能的で簡単な方法はないようです。確かに、これを使用できます:
pkg_version -v
これにより、すべてのパッケージ、その状態に関連するシンボル (更新が必要、ポートの成功など)、およびそのバージョンが表示されます。
これはスクリプト内にあるので、私は本当にこれをしたくありません:
my $blah = "pkg_version -v | grep -vE '(up-to-date|succeeds)'|awk '{print \$1}'";
# Then make a var and run it through with backticks.
これにより、すべてのパッケージのリストが得られ、それを配列に変換して、それを使って魔法をかけることができます。私がやりたいのは、パッケージの名前が提供されているのに対し、パッケージのバージョンが何であるかを把握することです。
繰り返しますが、これはパイプや awk などで実行できますが、回避できる場合は実行したくありません。
これは情報を見つけるのが非常に難しいと思うので、皆さんが思いつくことができるものを教えてください.
PSここにいくつかの情報があります:
FreeBSD バージョン: 9.1 Arch: x64 Perl バージョン: 5.14.2 (amd64-freebsd-thread-multi)
誰かがポートのタグを追加できれば、まだ存在しないので、それは素晴らしいことです.