Näin se on, järjestelmä puhtaana pitoon ei tarvita ulkopuolisen tekemiä ohjelmia. Kysyin tässä muutama päivä sitten kuinka kahdesta tiedostosta poimitaan erilleen poikkeavat rivit. Nyt paljastan, mihin se tieto tarvittiin.
Tein Bash Shell scriptin joka listaa järjestelmän kaikki tiedostot ja kansiot uplog-tiedostoon.
Seuraavaksi tein difflog scriptin, joka muodostaa ajettaessa difflogrm tiedoston, niistä tiedosto ja kansionimistä joita ei ollut uplog tiedostossa.
Tämä järjestely mahdollistaa siivota järjestelmästä pois kaiken sen mitä ei ollut olemassa jo silloin kun uplog tiedosto tehtiin.
Käytännössä järjestely toimii niin että kun asenna minkä tahansa ohjelman, ja totean sen tarpeettomaksi, poista sen järjestelmän työkaluilla, mutta sen lisäksi siivoan roskat ajamalla difflog scriptin. Näin syntyy tiedosto niistä roskista, jotka jäi poistetun ohjelman jäljiltä.
Nyt tarvitsee vain ajaa tuo difflogrm scripti ja kaikki on samoin kuin oli ennen ohjelman asennusta. Ja tämä yksinkertaisuus todellakin pitää järjestelmän puhtaana.
Miltä tällainen järjestely kuulostaa?
Tein Bash Shell scriptin joka listaa järjestelmän kaikki tiedostot ja kansiot uplog-tiedostoon.
Seuraavaksi tein difflog scriptin, joka muodostaa ajettaessa difflogrm tiedoston, niistä tiedosto ja kansionimistä joita ei ollut uplog tiedostossa.
Tämä järjestely mahdollistaa siivota järjestelmästä pois kaiken sen mitä ei ollut olemassa jo silloin kun uplog tiedosto tehtiin.
Käytännössä järjestely toimii niin että kun asenna minkä tahansa ohjelman, ja totean sen tarpeettomaksi, poista sen järjestelmän työkaluilla, mutta sen lisäksi siivoan roskat ajamalla difflog scriptin. Näin syntyy tiedosto niistä roskista, jotka jäi poistetun ohjelman jäljiltä.
Nyt tarvitsee vain ajaa tuo difflogrm scripti ja kaikki on samoin kuin oli ennen ohjelman asennusta. Ja tämä yksinkertaisuus todellakin pitää järjestelmän puhtaana.
Miltä tällainen järjestely kuulostaa?
Vastaukset 8
Vanhimmat
Lähtee sellaisia tiedostoja joilla ei ole mitään tekemistä kokeilemasi ohjelman kanssa. Ei hyvä.
Kokeilikko komentoa: ls -LR > tiedosto
ctrl c lopettaa haun ;-)
Komento tyrkkää kaiken kotikansioon valtavaksi tekstitiedostoksi nimellä "tiedosto".
Liian hidas.
Erittäin hankalalta vuonna 2020..
Jos jollain ilveellä saat kaikki muut ohjelmat (mukaan lukien käyttöjärjestelmän) olemaan tekemättä mitään sillä välin kun asennat, käytät ja poistat sen ohjelman, jonka tekemistä muutoksista haluat lopulta eroon, niin kuulostaa oikein mainiolta. Tuo ei vain taida olla mahdollista käytännössä.
Tässä on tullut onglmia matkaan, koska järjestelmässä on kansioita joiden sisältö kasvaa koko ajan.
Esimerkkinä:
~/.thumbnails/
~/.cache/mesa_shader_cache/
Täytyy sisällyttää difflog scriptiin mahdollisuus ohittaa tiettyjen kansioiden muutos. Muutoin noiden kansioiden sisältö tuottaa joka kerta difflogrm tiedoston.
Eihän tuo nyt mikään ongelma ole, tekee listan ohitettavista kansioista, vaikka näin:
Ohi=("~/.thumbnails/" "~/.cache/mesa_shader_cache/")
Vertaillessa vanhaan lokiin, ohittaa rivit joihin sisältyy listaan kuuluva.
Ongelmasi näyttää olevan luoda nopeasti logi olemassa olevista kansioista ja tiedostoista. Tämä esimerkki käyttää ramdisk -levyä, muuta se niiltä osin itsellesi sopivaksi.
Ohjelman ajo kesti 14,834s, tuskin tuota voi parantaa. Rivejä lokiin tuli 519480kpl, eli aika paljon.
Kerro jos löydät nopeamman tavan.
Asiaan liittyvää:
https://s8.gifyu.com/images/uplog.bash.png