Я не уверен, что полностью понимаю ситуацию, но вот сценарий, который сохранит и распечатает любой ввод:
#! /bin/bash
tee >( cat > arch.$(date +%s).lpd ) | lp
Я называю это storeandprint
и протестировал его с помощью:
ls | storeandprint
Уловка заключается в подстановке процесса с > (...)
. tee
отправит вывод в этот > () - файл и на стандартный вывод.
Как указано в моем комментарии, apt-cache depend
имеет параметр --recurse
.
Отключив все другие отношения пакетов, кроме Depends
и PreDepends
, я получаю нужный мне вывод:
$ apt-cache depends --recurse --no-recommends --no-suggests --no-conflicts --no-breaks --no-replaces --no-enhances
libc6:i386
Depends: libgcc1:i386
libgcc1:i386
Depends: gcc-4.9-base:i386
Depends: libc6:i386
PreDepends: multiarch-support:i386
multiarch-support
gcc-4.9-base:i386
multiarch-support:i386
Depends: libc6:i386
multiarch-support
Depends: libc6
libc6
Depends: libgcc1
libgcc1
Depends: gcc-4.9-base
Depends: libc6
PreDepends: multiarch-support
multiarch-support:i386
gcc-4.9-base
Как вы обнаружили, apt-cache зависит
’ --recurse
вариант предоставляет рекурсивный вариант. Чтобы это было полезно, вам нужно отключить несколько типов зависимостей:
$ apt-cache depends --recurse --no-breaks --no-replaces --no-suggests libgcc1:i386
libgcc1:i386
Depends: gcc-6-base:i386
Depends: libc6:i386
gcc-6-base:i386
libc6:i386
Depends: libgcc1:i386
Replaces: libc6-i686:i386
libc6:i386
libc6-i686:i386
apt-rdepends
является осиротевшим и не был обновлен для правильной поддержки нескольких архитектур. (Я бы сказал, что на данный момент это вряд ли когда-либо произойдет.)