Som de fleste kommandoer på Linux kan SSH bruges med input / output omdirigering via | (Unix Pipe). SSH kan også bruges med denne rørledning. Det grundlæggende koncept her er at forstå, hvordan Unix-rørledningen fungerer.

Når du forstår den måde, rør fungerer, kan du blive alvorligt kreativ. Denne artikel dækker, hvad der sker, når du kombinerer Unix-rør og SSH. Det skal bemærkes, at siden Unix-rør kan være næsten alt, er der ingen tvivl om at være kommandoer, der ikke er på denne liste, ville også være nyttige.

Forstå Unix Pipeline

Rør på Unix (og ved udvidelse, Linux) bruges til at kæde programmer sammen og få dem til at arbejde sammen. Hvis du f.eks. Bruger cat, kan du vise indholdet af en fil, men hvis du brugte et rør, kan du kæde cat kommandoen til den more kommando, der gør filen lettere at læse.

 cat file1 | mere 

Grundidéen her er dette: program1 fileX | program2 program1 fileX | program2 . Det er dog ikke kun begrænset til en fil og to programmer. Piping kan komme omkring så avanceret som du har brug for at være med så mange modifikatorer som du kan tænke på.

Bemærk: Nogle typer af rør kan udføres uden at bruge | . Nogle kan bruge > stedet.

5 Nyttige SSH-rørkommandoer

Nu hvor Unix-rørledningen har en lille forstand, lad os se, hvad vi kan gøre med SSH-protokollen og rørene. Her er en liste over nogle rigtig gode rør, som de fleste vil finde nyttige, når de kombineres med SSH.

1. Komprimeret filoverførsel

Glem at bruge scp til at overføre filer; Du kan gøre det med en simpel SSH-rørkommando. Ingen grund til at installere noget.

 tjære czf - / home / localuser / filefolder | ssh [email protected] tar -xvzf -C / home / remoteuser / 

Dette bruger tjæreprogrammet til at komprimere dine data lokalt og derefter ledes over SSH. Derefter modtager fjernmaskinen filen og ekstraherer den til den mappe, du har angivet. Du vil aldrig se et .tar arkiv, men det gør brug af en.

2. Kørsel af et lokalt script på en ekstern maskine (eller fjernbetjening på lokalt)

Fik et script skrevet på din computer og vil teste det meget hurtigt? Du behøver ikke at skubbe filen til den eller noget lignende. Bare rør din lokale fil gennem SSH og kør den på denne måde i stedet!

 ssh [email protected] 'bash -s' <scriptfile.sh 

Med denne kommando fjerner du behovet for at skubbe filer rundt på eksterne maskiner til at udføre shell scripts. Det sparer meget tid på lang sigt.

3. Ekstern harddisk backup

Vil du sikkerhedskopiere din computer til din fjernmaskine uden at tage harddisken ud fysisk og tilslutte den? Det er nemt at gøre, og med et SSH-rør, ikke mindre. Sådan fungerer det:

 sudo dd hvis = / dev / sda | ssh [email protected] 'dd of = sda.img' 

Dette gør brug af dd kommandoen. Det bruger dit lokale drev (sda) som kilden, og så røres outputet over SSH for at blive skrevet til en rå billedfil.

Bemærk: Det drev, du måske vil sikkerhedskopiere, kan have en anden betegnelse. Brug lsblk kommandoen til at finde ud af, hvilket drev du søger for at sikkerhedskopiere. Denne kommando vil fortælle dig hvad /dev/ at bruge i if= delen til kommandoen ovenfor.

4. Ekstern harddisk restaurering

Vil du gendanne det billede, du lige har sikkerhedskopieret din maskine? Det er nemt. Denne gang virker kommandoen i omvendt. Igen, hvis drevet, du genopretter til, hedder anderledes end det, der er angivet i eksemplet, skal du bruge kommandoen lsblk at finde ud af, hvad /dev/ det er angivet som.

 ssh [email protected] 'dd if = sda.img' | dd af = / dev / sda 

Kør denne kommando, og den .img-fil, du oprettede, bliver gendannet over netværket til den harddisk, du angiver.

5. Send en fil

At sende en enkelt fil over SSH er let. Sådan gør du det med rør.

 cat fil | ssh [email protected] "cat> remote" 

Denne kommando gør brug af kat-kommandoen til at sende en fil gennem et rør. Du kan også hente den fil med følgende kommando:

 ssh [email protected] "cat> remote" <fil 

Konklusion

Selvom det måske ikke virker så imponerende, kan rør forenkle og forandre den måde, du bruger kommandoer på Linux. Selvom denne liste fremhæver nogle af de mest nyttige, er det kun toppen af ​​isbjerget. Med den alsidige lodrette stang er mulighederne for at røre ting gennem SSH uendelige.

Kender nogen gode SSH rørkommandoer? Fortæl os nedenfor!

Billedkredit: Wikimedia Commons