Para todas aquellas personas que aún puedan estar buscando en Google este número en enero de 2017, pueden tener algunas cosas interesantes con las versiones recientes de apt y dpkg en Debian 8.5 sin necesidad de descargar nada.
Lista de contenidos del archivo deb sin descargar:
Primero localiza la url completa del archivo deb :
root@debian:apt-get --print-uris download yade
'http://httpredir.debian.org/debian/pool/main/y/yade/yade_2016.06a-7_amd64.deb' yade_2016.06a-7_amd64.deb 1621148 SHA256:26c0d84484a92ae9c2828edaa63243eb764378d79191149970926aa3ec40cdd4
PS: –print-uris switch imprime la url del paquete deb pero deb no se descarga.
Luego muestra el contenido del paquete deb sin descargarlo:
root@debian:curl -sL -o- "http://httpredir.debian.org/debian/pool/main/y/yade/yade_2016.06a-7_amd64.deb" |dpkg-deb -c /dev/stdin
drwxr-xr-x root/root 0 2016-12-10 22:18 ./
drwxr-xr-x root/root 0 2016-12-10 22:18 ./usr/
drwxr-xr-x root/root 0 2016-12-10 22:18 ./usr/bin/
-rwxr-xr-x root/root 13184 2016-12-10 22:18 ./usr/bin/yade
.........................more files listed bellow ......................
PS: El mismo resultado se puede lograr con
root@debian:dpkg -c <(curl -sL -o- "http://httpredir.debian.org/debian/pool/main/y/yade/yade_2016.06a-7_amd64.deb")
*Extraer un archivo del paquete deb anterior , sin descargarlo. *
Por ejemplo, queremos leer la página de manual del paquete yade sin instalar este paquete y sin siquiera descargar el paquete deb.
El nombre del archivo de la página de manual dentro del paquete deb como aconseja dpkg -c
es ./usr/share/man/man1/yade.1.gz
Para leer la página de manual sobre la marcha:
root@debian:curl -sL -o- "http://httpredir.debian.org/debian/pool/main/y/yade/yade_2016.06a-7_amd64.deb" |dpkg-deb --fsys-tarfile /dev/stdin |tar -xO ./usr/share/man/man1/yade.1.gz |man /dev/stdin
La página de manual se muestra correctamente usando la aplicación de manual.
PS: La tubería de arriba no funciona con el comando ar.
root@debian:apt --version --> apt 1.4~beta2 (amd64)
root@debian:dpkg --version --> Debian 'dpkg' package management program version 1.18.18 (amd64).
root@debian:man --version --> man 2.7.6.1
root@debian:tar --version --> tar (GNU tar) 1.29