Hvordan du bruker tmux på linux

Hvordan du bruker tmux på linux
TMUX står for terminal multiplexer.

Hvorfor tmux

Et program som for tiden kjører på datamaskinen er en prosess. For å kjøre mer enn en prosess med Linux, trenger du mer enn ett terminalvindu: ett terminalvindu per prosess. Disse vinduene overlapper hverandre, med noen nesten dekker andre. For å ivareta en prosess, må du klikke på vinduet for å bringe det i forkant. Når det er i forkant, kan du se noen resultater eller inndata. Dette er multitasking: å kjøre mer enn en prosess samtidig; I dette tilfellet, med forskjellige vinduer. Det er multitasking uten bruk av tmux. TMUX tilbyr multiplexing som en bedre erstatning - se nedenfor.

Hvert vindu bruker et skall som bash. Programkommandoer må skrives inn i et skall før de kjøres.

En økt er en midlertidig utveksling av meldinger mellom en bruker og datamaskinen hans eller mellom brukerens datamaskin og en ekstern datamaskin gjennom et fysisk nettverk. En prosess kan innebære slik utveksling av meldinger. Å jobbe med ett vindu er en økt. Å jobbe med mange vinduer i en varighet er fremdeles en økt.

Å bruke terminalvinduet i Linux for multitasking, som demonstrert ovenfor, kan bli tungvint når antall prosesser er mer enn tre og prosessene er lange.

Multitasking kan gjøres i ett terminalvindu, men med følgende ulemper:

Hvis du starter en prosess med ett terminalvindu og vil starte et annet, må du pause den første først. Når du pauser en prosess, stopper prosessen, og den gjør ikke noe. Du kan deretter starte neste prosess. Hvis du er ferdig med neste prosess snart nok, kan du gjenoppta den første prosessen, fremdeles i samme vindu. Det ser ut som terminal multiplexing, men det er det ikke. Med terminal multiplexing, skal prosessene kjøres samtidig.

Mer enn en prosess kan kjøres i ett terminalvindu ved hjelp av et asynkront ordning. Imidlertid vil forskjellige prosesser sende resultater til samme vindu, og resultatene som vises vil være inkonsekvente. Når du legger inn data, vil de gå til forskjellige prosesser. Denne ordningen kan bare fungere når du har få prosesser, og du vet alle resultatene deres, for å kunne vite hvilke innspill du skal sende og når. Den situasjonen med få prosesser vil neppe oppstå.

Med et terminalvindu kan du starte en prosess på en ekstern datamaskin, og deretter mislykkes den fysiske forbindelsen. Når forbindelsen er gjenopprettet, vil resultatene være upålitelige.

En annen ulempe med konvensjonelle terminalvinduer er at kommunikasjon ikke kan finne sted mellom vinduene når mer enn ett vindu åpnes.

TMUX er et program som løser disse problemene. Denne artikkelen forklarer hvordan TMUX løser disse problemene og diskuterer noen av TMUX tilleggsfunksjoner.

Artikkelinnhold

  • Løsning som tilbys av TMUX
  • Installere TMUX i Linux
  • Starter tmux
  • Opprette mer enn ett TMUX -vindu
  • Dreper det nåværende vinduet
  • Fest og løsne en TMUX -vindusøkt
  • Splitting Windows
  • Konklusjon

Løsningen som TMUX tilbyr

Som indikert ovenfor har terminalvinduet begrensninger for multitasking. Tmux overvinner disse begrensningene. TMUX erstatter terminalvinduet med sitt eget vindu mens det er aktivt. Tmux kan ha mer enn ett vindu. De ekstra vinduene legger over hverandre på hverandre. Å bytte mellom disse overlagrede vinduene er mulig. Og derfor blandes ikke resultatene, innganger og resultatene blandes ikke. Et TMUX -vindu kan deles inn i mindre vinduer. Disse mindre vinduene kalles ruter.

Med den konvensjonelle terminalen, hvis du kjører en ekstern prosess og tilkoblingen mislykkes, kan det hende at du ikke kan fortsette fra der du slapp når forbindelsen er gjenopprettet. Det vil si at resultatene av den eksterne prosessen til den eksterne datamaskinen ikke ville være pålitelige. TMUX kan løse det ved å løsrive en vindusøkt og deretter feste på nytt senere.

I hvert vindu, skallet (e.g., Bash) opererer for å håndtere kommandoene.

Installere TMUX i Linux

Kanskje TMUX allerede er installert på datamaskinen din. Så du må sjekke om den først er installert for ikke å installere på nytt. Skriv inn ledeteksten på terminalen, skriv inn

TMUX -Versjon

og trykk Enter.

Hvis det ikke er installert, vil det fortelle deg. Hvis den er installert, vil du ha tilbakemelding som,

Bruk: TMUX [-2CLUVV] [-C Shell-Command] [-F File] [-L Socket-Name]
[-S socket-path] [Command [Flags]]

Kommandoene i denne opplæringen er testet med Ubuntu, og de har operert godt. Så hvis du for øyeblikket bruker Ubuntu -operativsystemet, kan du teste kommandoene mens du leser med.

Installere TMUX i Ubuntu og Debian
For å installere i noen av disse operativsystemene, skriv inn

sudo apt install tmux

og trykk Enter. Hvis det ber deg om passordet ditt, skriver du inn passordet ditt og trykk Enter.

Installere tmux i centos og fedora
Å installere i centos eller fedora, skriv inn

sudo yum installer tmux

og trykk Enter. Svare på ethvert spørsmål som blir stilt.

Starter tmux

TMUX er et verktøy som må startes før det kan brukes. Når du åpner terminalvinduet, kjører ikke TMUX. Det kan startes og stoppes. Når det startes, tar det kontroll over terminalvinduet og overlegger egne vinduer. Når det stoppes, er du tilbake til terminalvinduet. For å starte tmux, skriv inn

tmux

(Alle tegn i små bokstaver) og trykk Enter. Du vil ha et nytt vindu. Tmux ville overta det nye vinduet. Det nye vinduet ser ut som terminalvinduet, men med en statuslinje nederst. I denne situasjonen indikerer statuslinjen at du er i TMUX Window 0, vist som 0: Bash (hvis du bruker Bash Shell).

Standard tastekombinasjon for TMUX er:

Ctrl+b

Du trykker på kontrolltasten og små bokstaver, og så snart du slipper tastene, trykker du på et annet tegn for å påvirke. For å vise listen over TMUX -kommandoer, skriv inn

Ctrl+b ?

Det vil si, trykk på kontrolltasten og tegn B på en gang, og så snart du slipper de to tastene, trykker du på skift og? Nøkkel (hvis du bruker det engelske tastaturet). Du bør se listen over kommandoer. Listen er ganske lang. Markøren ville være på toppen. Du kan bruke Down Arrow -tasten til å bla nedover listen.

For å gå ut av oppføringsvisningen, trykk

q

Og du vil være tilbake på ledeteksten.

Avslutt det nåværende vinduet
For å gå ut av det gjeldende vinduet, skriv inn

exit

og trykk Enter. Du vil se

[forlatt]

Som indikerer at du har forlatt fra TMUX -applikasjonen (hvis bare ett TMUX -vindu ble åpnet). Du bør være tilbake i det normale terminalvinduet hvis du bare hadde ett TMUX -vindu. Hvis du utfører kommandoen "Avslutt" igjen, lukkes det normale terminalvinduet.

Opprette mer enn ett TMUX -vindu

I delen ovenfor ble bare ett vindu opprettet. Når du starter tmux, opprettes ett vindu (0: bash). Du kan opprette mer. Hvis du ikke har åpnet terminalvinduet, må du åpne det og starte tmux ved å skrive,

tmux

og trykke Enter. Terminalvinduet skal forvandle seg til et TMUX -vindu, det første vinduet i TMUX. Lag ytterligere tre skjermvinduer ved å skrive følgende kommandoer og trykke Enter, der C er i små bokstaver (og trenger ingen skiftnøkkel):

Ctrl+B C
Ctrl+B C
Ctrl+B C

For hver av kommandoene trykker du på kontrolltasten og B (i små bokstaver); Slipp disse nøklene og bare trykk på C -tasten. Det kan ta litt kort erfaring å få det riktig. Hvis du har utført de tre kommandoene, og hvis du bruker bashskallet, bør du se i statuslinjen

[0] 0: Bash 1: Bash 2: Bash- 3: Bash*

[0] betyr økt 0. Resten av linjen betyr at du har åpnet fire vinduer, som er 0: bash, 1: bash, 2: bash og 3: bash. Telling av tmux -vinduer begynner fra 0.

For å gå til et hvilket som helst annet vindu, utfør følgende kommando:

Ctrl+B s

Du bør se en annen presentasjon, en liste over Windows -presentasjoner. Du kan fremheve etiketten på vinduet du vil bruke venstre-pil-tasten eller høyre-piletasten på tastaturet. Bruk høyre-pil til å velge vindu nummer 1, som faktisk er det andre vinduet, og trykk Enter.

Hvis du hadde skrevet noen kommando i det andre vinduet, bør du se kommandoene i vinduet. I statuslinjen skal du også se 1: bash*. Stjerne (*) indikerer vinduet du er i, og i dette tilfellet er det vindu nummer 1, som faktisk er det andre vinduet.

Du kan fortsette å skrive ut hvilke kommandoer du vil ha i dette andre vinduet. Du kan endre til et annet vindu, på samme måte.

Bytter til andre vinduer
Du kan bytte til et annet vindu ved å bruke metoden ovenfor. Det er en annen metode: å bytte til vindu nummer 3 (det fjerde vinduet), utfør

Ctrl+B 3

Du burde nå ha,

3: bash*

Med stjerne i statuslinjen, som betyr at du er i det fjerde vinduet. Så for å gå til et nytt vindu, kan du gjøre “Ctrl+B Index”, der en indeks er et ordinært nummer minus en.

Går til neste og tidligere vinduer
For å gå til neste vindu, gjør du

Ctrl+B n

Hvis du var i det andre vinduet, ville du ankomme det tredje vinduet. Hvis du var i det siste vinduet, ville du ankomme det første vinduet. For å gå til forrige vindu, gjør

Ctrl+B P

Hvis du var i det første vinduet, ville du ankomme det siste vinduet.

Liste opp alle vinduer
For å liste opp alle vinduer, gjør

Ctrl+B w

I listen som vises, vil du kunne velge det neste vinduet du ønsker, med tastaturet oppe eller ned-pil. Etter å ha uthevet, trykk Enter -tasten for å gå inn i det valgte vinduet.

Forlater et vindu
Å gå ut av en vindusype,

exit

og trykk Enter. Du kan avslutte alle vinduene ved gjentatte ganger å utføre exit -kommandoen. Hvis du gjør det antall ganger, tilsvarende antall TMUX -vinduer, kommer du til terminalvinduet, som ble overtatt av TMUX -verktøyet; Og du vil se:

[forlatt]

Hvis du gjør exit -kommandoen igjen, lukker du terminalvinduet.

Dreper det nåværende vinduet

Når du dreper et vindu, dreper du det med prosessen. Å drepe et vindu, gjør

Ctrl+B &

En melding som ligner på den nedenfor vil vises, og spør deg om du virkelig vil drepe vinduet.

Kill-Window Bash? (y/n)

Hvis du virkelig vil drepe vinduet, trykk Y, og vinduet blir drept hvis du ikke vil drepe vinduet, trykk n.

Å knytte og løsne en TMUX -økt

Et TMUX -vindu er ikke bare brukt til å jobbe med den lokale personlige datamaskinen. Den kan brukes til å utføre en prosess på en ekstern datamaskin. Når vinduet jobber for den lokale personlige datamaskinen eller kjører en prosess i en ekstern datamaskin, sies vinduet å være vedlagt. I tilfelle av en ekstern prosess, hvis du løsner vinduet og tilkoblingen, vil resultatet av prosessen på den eksterne datamaskinen fortsatt være pålitelig. Selvfølgelig kan prosessen i den eksterne datamaskinen stoppe - det er ikke et problem.

Når forbindelsen er gjenopprettet, kan du fortsette fra der du slapp ved å feste vinduet på nytt.

Du kan løsne fra den aktuelle økten ved å utføre:

Ctrl+B D

Hvis kommandoen er vellykket, vil du gå ut av TMUX -vinduene, og inn i terminalvinduet, med ledeteksten. Før ledeteksten, og over det, bør du se noe sånt som:

[løsrevet (fra økt 0)]

Nå som du er i terminalvinduet, for å vise listen over økter, skriv inn

tmux ls

og trykk Enter. Den første kolonnen i oppføringen gir navnet på økten. Når det gjelder denne artikkelen, skal det bare være en økt med navnet 0. Så for å feste på økten, skriv inn

tmux vedlegg -t 0

og trykk Enter.

Dreper en økt
Fra terminalvinduet kan du drepe en økt. Du bør være løsrevet fra en økt før du dreper den. Syntaksen for å drepe en økt fra terminalvinduet er:

TMUX Kill -Session -t Session Name

Splitting Windows

Splitting vertikalt
For å dele det nåværende vinduet vertikalt, gjør du

Ctrl+B %

Hvis du bruker det engelske tastaturet, må du trykke på skifttasten og nøkkelen som har % for å oppnå %. Hvis du gjorde det, ville du ha en vertikal linje midt i vinduet.

For å gå til neste rute, gjør du

ctrl+b o

Der O ikke er null, er det alfabetet karakter, o. Bevegelsen er syklisk. Under denne tilstanden er det ett vindu som har blitt delt inn i ruter. De andre vinduene har ikke ruter. I et vindu med ruter kan kommandoer skrives inn i hver av rutene.

Dreper en rute
For å drepe en rute med kommandoene, mens markøren er i ruten, gjør du

Ctrl+B x

Hvor X er små bokstaver, svar på ethvert spørsmål som blir stilt. Ruten dør med kommandoene. Kommandoene blir ikke med på kommandoene til noen annen rute.

Splitting horisontalt
For å dele det gjeldende vinduet horisontalt, gjør du

Ctrl+B “

Hvis du bruker det engelske tastaturet, må du trykke på skifttasten og nøkkelen som har ", for å få tak i".

For å gå til neste rute, gjør du

ctrl+b o

Der O ikke er null, er det alfabetet karakter, o. Bevegelsen er syklisk.

Du dreper en horisontal ru på samme måte som du dreper en vertikal rute.

Konklusjon

TMUX er et program som gjør det mulig for en Linux -bruker å ha sin økt med terminalvinduer i ett vindu. Hvert vindu kan deles i ruter. Standard tastekombinasjon for TMUX er Ctrl+B. Etter det må en annen karakter trykkes for å få en effekt. Med alle funksjonene er TMUX en Windows Manager Terminal Multiplexer. TMUX har en rival som heter Screen. Multiplexing her betyr å ha alle vinduer for prosessene sine i en vindusramme.

Chrys