Nie jesteś zalogowany na forum.

#1 2018-03-10 17:10:48

addos
Użytkownik
Data rejestracji: 2015-09-01
Liczba postów: 142

[Rozw.] pacman - ile paczek zainstalował ostatnim razem (skrypt)?

Szukam sposobu jak sprawdzić ile paczek zainstalował przed chwilą pacman.
W skrypcie wywołam pacmana, i w zależności od tego, czy coś zainstalował, czy też nic, to podejmę odmienną decyzję.
Myślałem, że zmienia się status code ostatniego polecenia (czyli pacmana), ale nie ma z tego pożytku.

Jakiś pomysł?

Ostatnio edytowany przez addos (2018-03-14 12:42:54)


Info przy ew. problemach: Arch Linux x64, Plasma 5 (aktualna), CPU C2D E8400 (3GHz, 6MB cache), ASUS P5Q-PRO (BIOS, bez UEFI), RAM 8GB (DDR2, Dual), GPU GF 9600GT (PCI-E, 512MB), SSD 250GB MLC (GPT, discard, Grub 2, all ext4), HDD 1TB (7200, SATA, AHCI, NCQ, MBR, all ext4), monitor 1920x1080@60Hz DVI, audio: ASUS Xonar DX (PCI-E x1, 5.1 analog, ALSA bez PulseAudio), klaw. PS/2, mysz USB

Offline

#2 2018-03-10 20:21:28

pavbaranov
Administrator
Lokalizacja: Kraków
Data rejestracji: 2015-08-22
Liczba postów: 1,656
WWW

Odp: [Rozw.] pacman - ile paczek zainstalował ostatnim razem (skrypt)?


Hardware: AMD: A8-7410 APU with Radeon R5
Software (podaję wyłącznie odrębności): Arch testing+kde-unstable, kernel linux-pb (4.19.8 m.in. PDS, UKSM, BFQ-MQ/SQ), amdgpu (dla CIK), KDE, patche z POLAUR

Offline

#3 2018-03-11 21:10:49

dracorp
Użytkownik
Lokalizacja: Poland, Gdańsk
Data rejestracji: 2015-09-06
Liczba postów: 96
WWW

Odp: [Rozw.] pacman - ile paczek zainstalował ostatnim razem (skrypt)?

Co żeś zrobił ze stroną? :) Ten żółty tekst w ogóle nie jest czytelny na biały tle.

Offline

#4 2018-03-11 21:18:45

pavbaranov
Administrator
Lokalizacja: Kraków
Data rejestracji: 2015-08-22
Liczba postów: 1,656
WWW

Odp: [Rozw.] pacman - ile paczek zainstalował ostatnim razem (skrypt)?

Nic nie zrobiłem. Zmieniłem tylko temat. Niebawem poprawię, bowiem - w istocie żółty tekst jest kompletnie niewidoczny na białym tle.


Hardware: AMD: A8-7410 APU with Radeon R5
Software (podaję wyłącznie odrębności): Arch testing+kde-unstable, kernel linux-pb (4.19.8 m.in. PDS, UKSM, BFQ-MQ/SQ), amdgpu (dla CIK), KDE, patche z POLAUR

Offline

#5 2018-03-14 12:42:39

addos
Użytkownik
Data rejestracji: 2015-09-01
Liczba postów: 142

Odp: [Rozw.] pacman - ile paczek zainstalował ostatnim razem (skrypt)?

Może być, chociaż myślałem, że może jest jakaś tajna opcja w pacmanie :)
Dzięki.


Info przy ew. problemach: Arch Linux x64, Plasma 5 (aktualna), CPU C2D E8400 (3GHz, 6MB cache), ASUS P5Q-PRO (BIOS, bez UEFI), RAM 8GB (DDR2, Dual), GPU GF 9600GT (PCI-E, 512MB), SSD 250GB MLC (GPT, discard, Grub 2, all ext4), HDD 1TB (7200, SATA, AHCI, NCQ, MBR, all ext4), monitor 1920x1080@60Hz DVI, audio: ASUS Xonar DX (PCI-E x1, 5.1 analog, ALSA bez PulseAudio), klaw. PS/2, mysz USB

Offline

#6 2018-04-24 20:44:39

nycko
Użytkownik
Data rejestracji: 2015-10-31
Liczba postów: 32
WWW

Odp: [Rozw.] pacman - ile paczek zainstalował ostatnim razem (skrypt)?

To ja od siebie dodam coś, co znalazłem w odmętach internetów:

  1. Wyświetli wszystkie zaktualizowane paczki w dniu, w którym polecenie zostało uruchomione

    sed -n "s/\[$(date '+%Y-%m-%d').*upgraded *\([^ ]*\)*/\1/p" /var/log/pacman.log
    # albo grepem, jak kto woli
    # grep "${date '+%Y-%m-%d'}.*upgraded" /var/log/pacman.log

    Format daty `$(date '+%Y-%m-%d')` daje np. 2018-04-24. Możliwe, że trzeba dopasować do wersji językowej swojego systemu. Dla polskiego tak, jak jest.

  2. Wersja z samymi nazwami paczek (bez listowania zmiany wersji) wyglądałaby tak:

    sed -n "s/\[$(date '+%Y-%m-%d').*upgraded *\([^ ]*\).*/\1/p" /var/log/pacman.log

    Co już można przekazać dalej do skryptów

A wersja bardziej rozbudowana, której ja używam jako funkcji:

Użycie:

  • update-log wyświetli paczki zaktualizowane w dniu wywołania

  • update-log 2018-01-01 wyświetli paczki zaktualizowane w dniu 2018-01-01
    update-log 2017-08 wyświetli paczki zaktualizowane w sierpniu 2017 r.
    update-log "2017-12-31 21" wyświetli paczki zaktualizowane 31 grudnia 2017, po godzinie 21, itd.

update-log () {
    local date=${1:-$(date '+%Y-%m-%d')}
    sed -n "s/\[${date}.*upgraded *\([^ ]*\)*/\1/p" /var/log/pacman.log
    # albo grepem, jak kto woli
    # grep "${date}.*upgraded" /var/log/pacman.log
}

Edytowano 31.05.2018: m.in. dodano opcję z grepem

Ostatnio edytowany przez nycko (2018-05-31 10:05:55)

Offline

#7 2018-04-25 10:20:34

addos
Użytkownik
Data rejestracji: 2015-09-01
Liczba postów: 142

Odp: [Rozw.] pacman - ile paczek zainstalował ostatnim razem (skrypt)?

No tak, analiza logów zawsze działa i daje max tego co chcemy uzyskać :)
Myślałem, że sam pacman ma w sobie jakieś dodatkowe opcje :)


Info przy ew. problemach: Arch Linux x64, Plasma 5 (aktualna), CPU C2D E8400 (3GHz, 6MB cache), ASUS P5Q-PRO (BIOS, bez UEFI), RAM 8GB (DDR2, Dual), GPU GF 9600GT (PCI-E, 512MB), SSD 250GB MLC (GPT, discard, Grub 2, all ext4), HDD 1TB (7200, SATA, AHCI, NCQ, MBR, all ext4), monitor 1920x1080@60Hz DVI, audio: ASUS Xonar DX (PCI-E x1, 5.1 analog, ALSA bez PulseAudio), klaw. PS/2, mysz USB

Offline

Stopka

Napędzają nas PacmanVPS i MegiTeam

Forum oparte na FluxBB