Strona 1 z 2
apt-cache pkgnames
: 19 kwietnia 2007, 00:02
autor: jang
W/g info apt-cache :
Kod: Zaznacz cały
pkgnames [ prefiks ]
To polecenie wyświetla nazwy wszystkich pakietów zainstalowanych
w systemie. Opcjonalnym argumentem jest przedrostek nazwy paki-
etów.
Zrobiłem coś takiego :
Kod: Zaznacz cały
apt-cache pkgnames > /tmp/zainst-deb
sort /tmp/zainst-deb -o /tmp/zainst-deb
i znalazłem w tym spisie coś takiego :
CGI-modules
Zna ktoś taki pakiet ?
Kpackage nie zna takiego pakietu.
apt-cache madison CGI-modules - nie pokazuje nic.
apt-cache search CGI-modules daje taki wynik :
libcgi-perl - modules for perl5, for use in writing CGI scripts.
Wie ktoś o co w tym bałaganie chodzi ?
To cudo w końcu pokazuję listę pakietów czy listę ... no właśnie czego ?
Czy ktoś z Was zna jakiś inny sposób na poznanie listy zainstalowanych w systemie pakietów ?
Re: apt-cache pkgnames
: 19 kwietnia 2007, 00:06
autor: velmafia
jang pisze:Czy ktoś z Was zna jakiś inny sposób na poznanie listy zainstalowanych w systemie pakietów ?
aloha
: 19 kwietnia 2007, 00:24
autor: jang
velmafia
dzięki za już i za jeszcze (jeśli możesz)
w/g info dpkg :
Kod: Zaznacz cały
dpkg -l | --list wzorzec-nazw-pakietów ...
Wyświetla pakiety pasujące do wzorca
przyznasz że raczej trudno się z tego domyślić że coś takiego wyświetli to o co mi chodziło.
Czy jest coś co wyświetli mi trochę bardziej skróconą wersję listy pakietów tzn same nazwy ?
Pozdrowienia
: 19 kwietnia 2007, 00:33
autor: velmafia
jang pisze:przyznasz że raczej trudno się z tego domyślić że coś takiego wyświetli to o co mi chodziło.
a o co dokładnie Ci chodzi?
: 19 kwietnia 2007, 00:51
autor: jang
Przepraszam ja tak tylko głośno myślę o tych czasami dziwnych wpisach w
info, man. Przy takim opisie jak wyżej zacytowałem trudno się domyślić że
dpkg - lwyświetli mi listę zainstalowanych pakietów ale mniejsza z tym.
dpkg - l wyświetala jak zresztą wiesz coś takiego :
Kod: Zaznacz cały
ii arts 1.5.5-1 sound system from the official KDE release
ii artsbuilder 3.5.5-2 synthesizer designer for aRts
ii at 3.1.10 Delayed job execution and batch processing
a ja potrzebowałbym tak :
oczywiście jeśli nie ma jakiegoś gotowego polecenia to sobie poradzę z tym przy pomocy bash'a no ale może jest coś takiego ?
: 19 kwietnia 2007, 01:56
autor: Gość
: 19 kwietnia 2007, 17:53
autor: jang
Ze względu na kolejny :-( problem który się pojawił :
apt-get -d install ... - nie chce ściągać pakietów które są zainstalowane w systemie
mam kolejne pytanie : czy jest jakieś polecenie które wyświetli nie : adduser a cały pakiet czyli : adduser_3.102_all.deb
reprepro nie potrafi instalować pakietu tak jak apt - apt-get install adduser tylko musi mieć : adduser_3.102_all.deb
Pozdrawiam i dziękuję za odpowiedzi.
: 19 kwietnia 2007, 19:22
autor: Gość
jang pisze:mam kolejne pytanie : czy jest jakieś polecenie które wyświetli nie:adduser a cały pakiet czyli: adduser_3.102_all.deb
Tak wystarczy?
Kod: Zaznacz cały
apt-cache show adduser | sed '/Filename:/!d]
[b][u]DOPISEK:[/u][/b]
Na wszelki wypadek dopiszę jeszcze, że aby w ten sposób uzyskać od razu info o wszystkich zainstalowanych paczkach wystarczy mini skrypcik:
[code]#!/bin/bash
paczka="$(dpkg -l | awk '{print $2}')"
for x in $paczka; do
apt-cache show "$x" \
| sed '/Filename:/!d;{s/.*\///}'
done
Pozdrawiam
: 20 kwietnia 2007, 01:18
autor: jang
Hagal
bardzo bardzo dziękuję,
i jeszcze jedno pytanko, ale może "umaluję" je na końcu posta.
No więc tak -
dpgk -l wyświetlając coś na ekranie pokazuje również nagłówek :
Kod: Zaznacz cały
Wybór=U=Nieznany/I=Instalacja/R=Usunięcie/P=Wyczyszczenie/H=Zatrzymanie
| Stan=N=Brak/I=Zainst./C=Skonfig./U=Rozpakowany/F=Nieskonfig./H=Wpół-zainst.
|/ Błędy?=(brak)/H=Wstrzym./R=Do przeinst./X=Obydwa (Stan,Błędy:wielk.lit.=źle)
||/ Nazwa Wersja Opis
+++-=================-=================-=====================
który mnie osobiście w tym konkretnym przypadku nie jest do szczęścia potrzebny. Więc nie wypadało mi nic innego zrobić jak tylko z lekka zmodernizować Twój mini skrypcik :-) no i wyszło mi coś takiego (w tej wersji zmieniła się tylko
paczka)
Kod: Zaznacz cały
paczka="$(dpkg -l | awk '{print $2}' | tail -n +6)
no i mam to co chciałem, czyli sam spis pakietów bez w/w nagłówka. No ale nie byłbym sobą gdybym nie spróbował jeszcze coś "namieszać" i efekt jest taki :
Kod: Zaznacz cały
paczka="$(dpkg -l | awk '{print $2}')"
for x in $paczka; do
apt-cache show "$x" | sed -e '1,5d' | sed '/Filename:/!d;{s/.*\///}' >> /tmp/spis-deb
done
dodałem :
sed -e '1,5d'
Czas już na pytanie - co faktycznie namieszałem ?
Przy tej drugiej wersji również w pliku mam to co chciałem, czyli to pytanie jest takie czysto teoretyczne ale może na przyszłość się przyda ? Chodzi o to że oprócz tego co chciałem mam na ekranie (to nie jest zapisywane do pliku) taki oto dodatek:
Kod: Zaznacz cały
W: Nie udało się odnaleźć pakietu Stan=N=Brak/I=Zainst./C=Skonfig./U=Rozpakowany/F=Nieskonfig./H=Wpół-zainst.
E: Nie znaleziono żadnych pakietów
W: Nie udało się odnaleźć pakietu Błędy?=(brak)/H=Wstrzym./R=Do
E: Nie znaleziono żadnych pakietów
W: Nie udało się odnaleźć pakietu Nazwa
E: Nie znaleziono żadnych pakietów
jang@ramireza:~$ ~/deb-spis1
W: Nie udało się odnaleźć pakietu Stan=N=Brak/I=Zainst./C=Skonfig./U=Rozpakowany/F=Nieskonfig./H=Wpół-zainst.
E: Nie znaleziono żadnych pakietów
W: Nie udało się odnaleźć pakietu Błędy?=(brak)/H=Wstrzym./R=Do
E: Nie znaleziono żadnych pakietów
W: Nie udało się odnaleźć pakietu Nazwa
E: Nie znaleziono żadnych pakietów
jang@ramireza:~$ ~/deb-spis1
W: Nie udało się odnaleźć pakietu Stan=N=Brak/I=Zainst./C=Skonfig./U=Rozpakowany/F=Nieskonfig./H=Wpół-zainst.
E: Nie znaleziono żadnych pakietów
W: Nie udało się odnaleźć pakietu Błędy?=(brak)/H=Wstrzym./R=Do
E: Nie znaleziono żadnych pakietów
W: Nie udało się odnaleźć pakietu Nazwa
E: Nie znaleziono żadnych pakietów
Absolutnie poprawny wynik uzyskałem po wprowadzeniu obydwu poprawek jednocześnie tzn:
Kod: Zaznacz cały
#!/bin/bash
echo -n > /tmp/spis-deb
paczka="$(dpkg -l | awk '{print $2}' | tail -n +6)"
for x in $paczka; do
apt-cache show "$x" | sed -e '1,5d' | sed '/Filename:/!d;{s/.*\///}' >> /tmp/spis-deb
done
ale czy aby napewno muszą być obydwie czy też coś dałoby się poprawić tylko w pętli ?
Pozdrowienia
: 20 kwietnia 2007, 01:36
autor: Gość
jang pisze:ale czy aby na pewno muszą być obydwie czy też coś dałoby się poprawić tylko w pętli?
Nie musi być ani jedna ani druga
Poza tym dzięki za zwrócenie uwagi na nagłówek - pisałem na szybko, więc mi umknęło.
Zauważ że
dpkg -l poprzedza nazwę pakietu informacją o tym że jest zainstalowany (ii)
Skoro tak to całość wystarczy zapisać tak:
Kod: Zaznacz cały
#!/bin/bash
paczka="$(dpkg -l | grep '^ii ' | awk '{print $2}')"
lista="/tmp/spis-deb"
for x in $paczka]
i już grep odrzuci nam wszystkie linie nie rozpoczynające się od [b]ii[/b]
Pozdrawiam