Bunun bir SuperUser veya UnixLinux sorusu olup olmadığından emin değilim, ama burada deneyeceğim ...
Son zamanlarda şunu buldum:
# 710689 - yetenek: ağaçlarda unicode karakter kullanın - Debian Bug rapor günlükleri
Bağımlılık listelerindeki ağaçlar için yeteneklerin unicode karakterleri kullanması güzel olurdu, örneğin:
--\ Depends (3) --- libc-dev-bin (= 2.17-3) --- libc6 (= 2.17-3) --- linux-libc-dev --\ Suggests (2) --- glibc-doc (UNSATISFIED) --\ manpages-dev
...
... ve düşündüm ki - vay be, ASCII-art ağaç çıktısını gerçekten beğendim, aptitude
bunu yapabileceğinin farkında değildi ! Yani, aptitude
komut satırı anahtarlarıyla bir saat karıştırmaya başladım - ve bu çıktıyı alamıyorum? İlk sorum şu - bu çıktı ilk etapta nereden geliyor ?!
Bir süre sonra, sistemimde aptitude
nihayetinde sembolik bağların olduğunu fark ettim /usr/bin/aptitude-curses
; ve sonunda bunun aptitude
bir curses
arayüzü olduğunu fark ettim !:/
Sonunda aptitude
herhangi bir argüman olmadan çalıştım - ve böylece curses
arayüz başlıyor ve böyle bir şey görebiliyorum:
... çok açık bir şekilde, bu ASCII ağaç karakterleri lanetler arayüzünden geliyor.
Merak ediyorum - böyle bir "görsel" ASCII ağacı çıktısı olacak Debian / apt aracı var - ama paketlerin gerçek bağımlılıkları ile?
Borç hakkında biliyorum - Paket bağımlılık grafikleri (ayrıca yazılım önerisi - Bir paketin bağımlılıkları görsel olarak nasıl görüntülenir? - Ubuntu'ya sorun ); ama ben bir dizin ağacı ("sıralanmamış" [düğüm konumu açısından) yerine debtree
, graphviz
's tarafından oluşturulan benzeyen terminalde bir şey istiyorumdot
) .
Ayrıca gördüm Bir ağaç gibi görsel olarak bağımlılık gösterecek bir şey var mı? aşağıdakileri önerir:
$ apt-rdepends aptitude
Reading package lists... Done
Building dependency tree
Reading state information... Done
aptitude
Depends: libapt-pkg4.10
Depends: libboost-iostreams1.42.0 (>= 1.42.0-1)
Depends: libc6 (>= 2.4)
Depends: libcwidget3
Depends: libept1
Depends: libgcc1 (>= 1:4.1.1)
Depends: libncursesw5 (>= 5.7+20100313)
Depends: libsigc++-2.0-0c2a (>= 2.0.2)
Depends: libsqlite3-0 (>= 3.7.3)
Depends: libstdc++6 (>= 4.5)
Depends: libxapian22
libapt-pkg4.10
libboost-iostreams1.42.0
Depends: libbz2-1.0
Depends: libc6 (>= 2.3.6-6~)
Depends: libgcc1 (>= 1:4.1.1)
Depends: libstdc++6 (>= 4.2.1)
Depends: zlib1g (>= 1:1.1.4)
...
... bu iyidir, çünkü önce gerekli paketin derhal bağımlılıklarını listeler; ve birinci düzey bağımlılık paketlerin ardından bağımlılıkları ve benzeri - ama bir ağaç olarak görsel değil (ve aslında aptitude
'ın curses
size bağımlılık düğümünü genişlettiğinizde arayüzü basit gösteriler hakkında bilgi yüklü, ve ayrıca bağımlılıkları genişletmek değildir).
Yani, soru şu - terminal karakterleriyle bir bağımlılık ağacı grafiği üretecek bir araç var mı - örneğin, aşağıdaki sahte kodda:
$ pseudo-deb-graph --show-package="aptitude"
aptitude
--- Depends: libapt-pkg4.10
--\ Depends: libboost-iostreams1.42.0 (>= 1.42.0-1)
--- Depends: libbz2-1.0
--- Depends: libc6 (>= 2.4)
--\ Depends: libc6 (>= 2.3.6-6~)
--\ Depends: libc-bin (= 2.13-0ubuntu13)
--- ...
--\ Depends: libgcc1
--- ...
--\ Depends: tzdata
--- ...
...