Как найти полуконфигурированные/сломанные пакеты в Debian?

Я не думаю, что это возможно (но хотелось бы оказаться неправым). Однако вы можете использовать промежуточную переменную. bash -c , запускаемый -exec , является просто экземпляром bash, как и любой другой:

$ find . -type f
./foobarbaz
$ find . -type f -exec bash -c 'v=${0#./foo}; echo ${v%baz}'  {} \;
bar

Так что я не вижу причин, почему это не сработает (если бы я понял, что вы стараемся делать правильно):

find ./Source -name '*.src' \
     -exec bash -c 'v=${0%.src}; \ 
        myconvert -i "{}" -o "./Dest/${v#./Source/}.dst"' {} \;
7
13.04.2017, 15:36
2 ответа

Быстрый ввод:

dpkg -l | grep -v '^ii'

Здесь перечислены все пакеты, которые хотя бы мало известны системе, но установлены не полностью.

Если вам нужен анализируемый вывод, используйте dpkg-query с настраиваемым форматом. Отрегулируйте фильтр по своему желанию.

dpkg-query -f '${status} ${package}\n' -W | awk '$3 != "installed" {print $4}'
dpkg-query -f '${status} ${package}\n' -W | awk '$3 == "half-configured" {print $4}'
11
29.04.2021, 00:07

dpkg --audit

   -C, --audit [package-name...]
          Performs database sanity and consistency checks for package-name
          or all packages if omitted (per package checks since dpkg 1.17.10).
          For example, searches for  packages  that  have been installed only
          partially on your system or that have missing, wrong or obsolete
          control data or files. dpkg will suggest what to do with them  to
          get them fixed.

источник: man dpkg

5
29.04.2021, 00:07

Теги

Похожие вопросы