Chciałbym napisać skrypt który będzie:
1. wczytywał nazwy pakietów (z /var/cache/apt/archives) zapisywał je do pliku ( /tmp/spis-deb)
2. na podstawie powyższej listy będzie odczytywał nazwę i wersję pakietu
3. przy pomocy listy z pkt.2 ma wykasować z /var/cache/apt/archives starsze wersje tego samego pakietu
4. cdn jak uporam się z ... :
Kod: Zaznacz cały
#! /bin/bash
ls -1v /var/cache/apt/archives > /tmp/spis-deb
cat /tmp/spis-deb | grep -v '#' | while read line; do
dpkg-deb -W /var/cache/apt/archives/`echo "$line" | awk '{print $1}'`;
done;
- pakuje mi również do tej pierwszej listy nazwę katalogu "/partial" i podejrzewam że gdyby coś w nim było to i jego zawartość również by mi dopisał
- trafił mi się również pakiet o zerowej zawartości i jego też dopisał (rzadko mi się to przytrafia ale czasami przy apt-get update ,upgrade mam przekroczony czas połączenia czy jakoś tak i pewnie dlatego ten "zerowy" pakiet)
No i czas na pytania:
1. Co zmienić aby skrypt nie wczytywał ani nazwy katalogu /partial ani jego zawartości ? no i pustych plików również nie
2. Mając tą drugą listę (część zawartości) :
Kod: Zaznacz cały
apt 0.6.46.4-0.1
aptitude 0.4.4-1
aptitude 0.4.4-4
avahi-daemon 0.6.16-5
util-linux 2.12r-19
vim-common 1:7.0-122+1
vim-common 1:7.0-219+1
vim-tiny 1:7.0-122+1
vim-tiny 1:7.0-219+1
w32codecs 1:20061022-0.0
Oczywiście sugestie dotyczące całkowicie innego podejścia do problemu również mile widziane
Pozdrawiam