Gå til innhold

Linux script (while true)


klovn7

Anbefalte innlegg

hei

 

while true; do lynx -source url >/dev/null 2>&1; done

 

en kompis laget dette scripet til meg som gjør at en url blir trykka på konstant helt til jeg stopper den.

Det jeg lurer på er om det er mulig å gjøre slik at denne handlingen utføres raskere?

Slik at det går feks, dobbelt så fort? eller 100 ganger tregere?

Lurer også på hva ">/dev/null 2>&1; done" denne delen betyr?

 

takk

Lenke til kommentar
Videoannonse
Annonse

1) Hvorfor i alle h******s dager skal du gjør det der med lynx? Hva galt har wget gjort?

2) En slik loop vil kjøre "så raskt som mulig", det vil si så raskt BASH (som jeg antar du mente da du sa "Linux script") klarer å eksekvere den på den gitte maskinen. Skal du få den til å kjøre raskere, må du kjøre den på en bedre maskin, eller skrive koden (koden som henter siden, samt noe tilsvarende scriptet) i et mer lavnivåspråk, f.eks. C eller assembly.

3) >/dev/null betyr redirecting av standard output til /dev/null. Vet du ikke hva /dev/null er, har du jommen ikke mye med redirecting (og da heller ikke dette scriptet) å gjøre.

4) 2>&1 betyr redirecting av standard error til standard output.

5) done er et ord som brukes for å terminere en while- eller for-loop i BASH.

 

 

 

Edit: Tillegg til 2: Som slime mold har poengtert, vil flere parallelle eksekveringer kunne øke ytelsen noe. Kraftig ytelsesøkning vil selvsagt være å se dersom du har en SMP- eller HT-kapabel maskin.

Endret av gspr
Lenke til kommentar
3) >/dev/null betyr redirecting av standard output til /dev/null. Vet du ikke hva /dev/null er, har du jommen ikke mye med redirecting (og da heller ikke dette scriptet) å gjøre.

Hvorfor ikke? Ett sted må jo man begynne, og ett sted må man jo gå for å få svar, så da er vel dette forumet det rette stedet? (Skulle man tro...)

 

/dev/null er unix-systemers virtuelle enhet hvor alt som kommer inn blir droppet. Du kan se på det som en svær sjakt hvor alt du hiver inn der forsvinner.

 

Prøv med cat /dev/urandom > /dev/null, så bør du bli overbevist.

 

 

Edit: Alltid godt med litt wikipedia-info: http://en.wikipedia.org/wiki/Dev/null

Endret av drange_net
Lenke til kommentar

slime mod: skal ta en titt på man sleep. Takk

 

gspr:

1.Vet ikke hva galt wget har gjort jeg, men som jeg nevnte var det ikke jeg som lagde det.

2. ok

3. Som drange_net så pent sier. Synes faktisk det er greit å vite hva som skjer på datan min. Hvis jeg da lurer på hvordan dette "scripet" fungere er det vel ingen andre bedre sterder å spørre enn her?

ellers tar for bra svar :D

 

drange_net:

herlig forklart, nå er det klart for meg :)

prøvde linuxguiden, men nå skal jeg også legge denne sia i favoritter :)

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...