Я использую Ubuntu 20.04, и у меня есть список имен пакетов, для которых я хочу проверить, является ли он частью репозитория Ubuntu по умолчанию.
Пока что я итерирую по списку проверку со следующим скриптом:
#!/bin/bash
input="modified_list.txt"
RED='\033[0;31m'
NC='\033[0m'
if [ ! -f $input ];
then
echo -e "file does not exist: $input"
exit 1
fi
while read -r line
do
if [[ $(apt policy $line 2> /dev/null | grep 'focal' | wc -l) -gt 0 ]];
then
# print package name normal if part of ubuntu default repo
echo -e "$line\t"
else
# print package name red if not in default repo
echo -e "${RED}${line}${NC}"
fi
done < $input
Тут я заметил, что пакет xvnc4viewer
не является (согласно скрипту) частью репозитория. При выполнении apt policy xvnc4viewer
терминал выводит:
xvnc4viewer:
Installed: 4.1.1+xorg4.3.0-37.3ubuntu2
Candidate: 4.1.1+xorg4.3.0-37.3ubuntu2
Version table:
*** 4.1.1+xorg4.3.0-37.3ubuntu2 100
100 /var/lib/dpkg/status
При использовании команды на других пакетах я нашел URL-адрес или что-то, что помогло мне выяснить, откуда взялся пакет, но в этом случае я не мог не разберусь. С помощью apt-cache search xvnc4viewer
пакет найден, но команды типа apt-cache showpkg
мне тоже не помогли. Итак, как мне выяснить, откуда пришла посылка?