“pause”Lar brukeren utføre en kommando og deretter avslutte den etter at en angitt tid har gått. Med andre ord, "pause”Gjør det lettere å kjøre en kommando i en viss tid. “pause”Kommando er inkludert i GNU Core Utility Kit, som leveres standard med nesten hvert Linux -system.
I oppskrivningen vil vi gå gjennom det grunnleggende i denne kommandoen med eksempler.
Syntaks
Kommandoen "timeout" har følgende syntaks:
timeout [alternativ] [Varighet] [Kommando]
Varighet kan være i flytende heltall med tidssuffiks:
S/ingen suffiks (når ingen suffiksenhet er fikset den vurderer til andre)Bruke “timeout” -kommandoen
Ping systemet ditt med en IP -adresse, vil det fortsette til du avslutter det ved å trykke på Ctrl+C.
Sett nå en tid til å avslutte den ved hjelp av "timeout" -kommandoen. For eksempel vil jeg sette tiden til 7, noe som betyr at utførelsen av "ping" -kommandoen vil stoppe etter 7 sekunder.
Følg kommandoen nedenfor for å angi tidsbegrensningen:
$ timeout 7 ping 192.168.18.213
Angi timeout med en annen tidsenhet
Tilsvarende kan vi pinge “Facebook.com ”også ved å bruke:
$ ping facebook.com
For å stoppe “Ping” -kommandoen etter 1 minutt, skriv inn en undergitt kommando i en terminal:
$ timeout 1m ping facebook.com
Viser avkjøringsstatus
Mange programmer sendte en verdi/kode til skallet når de avsluttes.
Avslutt for eksempel følgende prosess før den treffer sin tidsbegrensning som er 6 sekunder. Hit Ctrl+C og sjekk utgangsstatus ved å skrive “Echo $”. Den vil returnere “0” i utgangen:
$ timeout 6 ping facebook.com
Å avbryte en løpsprosess vil alltid gi en "0" utgangskode.
Bevare statusen
Bevare status returnerer en utgangsstatus selv om vi avslutter den kraftig ved å bruke Ctrl+C. Kommandoen ville være:
$ timeout-Preserve-Status 2 Ping Facebook.com
Og for å sjekke utgangskoden, skriv: Skriv inn:
$ ekko $?
Nå vil utgangsstatusen være 143.
Sende signaler til timeout
Kommandoen "timeout" sender et signal til prosessen for å avslutte den.
For å sjekke tilgjengelige signaler, bruk “Kill” -kommandoen:
$ Kill -L
En liste over alle tilgjengelige signaler vises.
De “-S” (-Signal) Alternativet lar deg angi et signal for å gi:
$ timeout -s
Kommandoen “timeout” bruker “Sigterm” for å stoppe en prosess, men mange prosesser ignorerer “Sigterm” -signalet. For å avslutte en prosess med kraftig bruk av “Sigkill” -signalet, kan du ikke ignoreres ved noen prosess.
Sende Sigkill til ping -kommandoen etter 2 sekunder, skriv:
$ sudo timeout -s sigkill ping facebook.com
Du kan også sende signaler ved å bruke et signalnummer i stedet for signalets navn:
$ sudo timeout -s 9 ping 192.168.18.213
Sender Kill Signals
De “-K” Alternativet brukes til å avslutte prosessen.
I det følgende eksempel, hvis forbindelsen ikke etableres om 2 minutter, vil den drepe timeout -kommandoen etter 3 sekunder:
$ sudo timeout -k 3 2m ping facebook.com
I mitt tilfelle vil tidsavbruddskommandoen kjøres i 2 minutter og ikke avsluttes. Derfor vil det ikke drepe selv etter 3 sekunder.
Får hjelp
Linux har en veldig god funksjon som den gir hjelp for hver kommando vi bruker. Ved bruk av "hjelp" Med et kommandonavn vil det gi deg hjelpinformasjonen i detalj:
$ timeout --hjelp
Sjekk versjon
For å sjekke versjonen av timeout -kommandoen, skriv:
$ timeout -Versjon
Konklusjon
I Linux-operativsystemet er "timeout" -kommandoen et kommandolinjeverktøy som brukes til å avslutte en løpsprosess etter en bestemt periode. Det brukes til prosessene som kjører kontinuerlig. Dessuten kan også utgangsstatus for løpsprosesser nås ved hjelp av "timeout" -kommandoen. Vi har diskutert timeout -kommandoer gjennom forskjellige eksempler med flere alternativer.