Opryd.sh V 2014

Dette forum bruges på EGET ANSVAR til at lege med scripts og andre ting med risiko for at beskadige sit eget og andres systemer.
Gnomy
Indlæg: 194
Tilmeldt: 8. dec 2007, 15:37

Re: Opryd.sh V 2014

Indlæg af Gnomy »

@Christian.Arvai
Vil du løfte sløret for hvorfor du vælger at inkludere disse kommandoer i scriptet?

sudo dpkg --configure -a >> ~/Updates/"$dato"
sudo apt-get check -y >> ~/Updates/"$dato"
sudo updatedb >> ~/Updates/"$dato"
lath
Indlæg: 5095
Tilmeldt: 27. apr 2008, 02:16
IRC nickname: lars_t_h
Geografisk sted: Fyn

Re: Opryd.sh V 2014

Indlæg af lath »

Gnomy skrev:@Christian.Arvai
Vil du løfte sløret for hvorfor du vælger at inkludere disse kommandoer i scriptet?

sudo dpkg --configure -a >> ~/Updates/"$dato"
sudo apt-get check -y >> ~/Updates/"$dato"
sudo updatedb >> ~/Updates/"$dato"


@Gnomy

Du kan bruge man kommandoen til at læse om hver kommando du ikke forstår.
f.eks.

Kode: Vælg alt

man dpkg

q-tasten afslutter man pageren

/Lars
Jeg er Software ingeniør (Diplomingeniør) i Informationsteknologi og indlejede systemer, hvor indlejrede systemer er computer (microcontroller) + elektronik i for eksempel et TV, en router, en vaskemaskine og den slags
AJenbo
Admin
Indlæg: 20862
Tilmeldt: 15. nov 2009, 15:04
IRC nickname: AJenbo
Geografisk sted: Vanløse, København

Re: Opryd.sh V 2014

Indlæg af AJenbo »

Den første kommando:

Kode: Vælg alt

sudo dpkg --configure -a >> ~/Updates/"$dato"

Færdig gøre konfigurationen for programmer hvor installationen er gået galt tidligere. Det er der bare hvis der skulle være noget galt tidligere.

De 2 andre gør er nogenlunde det samme men er ikke helt sikker på specifikt hvordan hvordan.
zob
Redaktør
Indlæg: 4430
Tilmeldt: 6. jan 2009, 22:01
Geografisk sted: København

Re: Opryd.sh V 2014

Indlæg af zob »

Kode: Vælg alt

sudo updatedb >> ~/Updates/"$dato"


Hvis man er meget ordenlig omkring hvad der kan og ikke kan søges efter med kommandoen locate, kan man updatere databasen som indekserer filsystemet og gøre det hurtigere at søge. Det er det der sker her med updatedb kommandoen. Med mindre du er en meget ivrig bruger af locate kan du sagtens springe denne over. Den kører i forvejen automatisk en gang i døgnet på din computer som en del af det automatiske "cronjobs" som du kan se i /etc/cron.daily.
Det script der hedder mlocate kører updatedb (efter at sikret sig at du ikke kører på batteri).

Til mine behov ville jeg bestemt updatedb kommandoen over (en gang i døgnet er rigeligt for mig). Men det er forskelligt fra bruger til bruger. Så vidt jeg kan se er det også den del af scriptet der potentielt ville spise mest cpu/batteri (dog betinget af hvor mange ændringer der har været på filsystemet).
AJenbo
Admin
Indlæg: 20862
Tilmeldt: 15. nov 2009, 15:04
IRC nickname: AJenbo
Geografisk sted: Vanløse, København

Re: Opryd.sh V 2014

Indlæg af AJenbo »

Hej mcrypto, generelt kan jeg godt lide din ændringer, men der er lige nogle ændringer jeg forslår du laver.

Du har fået omskrevet "~/.cddbslave/*" til "~/.ccdbslave/*"

Et sted har du skrevet "${UPDATE_LOG}" i steder for "$UPDATE_LOG"

Jeg vil forslå du fjerne de linjer du har udkomenteret så det bliver letter at læse scriptet. Generelt er det også en god ide at holde et script rent for mærkelige kommentar og finurligheder.

Jeg forstår ikke denne kommentar:
"# meta-key-mode, now how to quit?"

Jeg kan se du piper "yes" til "apt-get", det er ikke noget jeg har set før, skulle det hjælpe på noget?

Du har også fjernet -m, hvilket nok er mere sikkert at gøre, det ville være godt om du kunne forklare lidt om de ændringer du har lavet/forslået så det er til at forstå uden at skulle læse hele koden.

Hvad er meningen med denne kode?

Kode: Vælg alt

    for i in lambda tau phi
    do
       echo >> $UPDATE_LOG
    done


I slutningen bruger du "| tee -a" mens du alle andre steder bruger ">>", igen det er bedst at gøre tingende ens hele vejen så det er til at gennemskue.
AJenbo
Admin
Indlæg: 20862
Tilmeldt: 15. nov 2009, 15:04
IRC nickname: AJenbo
Geografisk sted: Vanløse, København

Re: Opryd.sh V 2014

Indlæg af AJenbo »

Det er rigtig godt med den log funktion, det gør det virkelig let at se hvad det forgår :)

Du har en fejl i starten hvor du bruger $dato inden du sætter den.

Du har også valgt ikke at logge output fra alle kommandoer, men det kan jo være der er en grund til.