Kaip išsaugoti išvesties komandą į failą Bash (dar žinomas kaip "Linux" ir "macOS" terminalas)

Turinys:

Kaip išsaugoti išvesties komandą į failą Bash (dar žinomas kaip "Linux" ir "macOS" terminalas)
Kaip išsaugoti išvesties komandą į failą Bash (dar žinomas kaip "Linux" ir "macOS" terminalas)

Video: Kaip išsaugoti išvesties komandą į failą Bash (dar žinomas kaip "Linux" ir "macOS" terminalas)

Video: Kaip išsaugoti išvesties komandą į failą Bash (dar žinomas kaip
Video: Making Custom Length Ethernet Cables - YouTube 2024, Balandis
Anonim
Kai paleidžiate komandą "bash" eilutėje, ji paprastai spausdina šios komandos išvestį tiesiai į terminalą, todėl galite jį nedelsdami perskaityti. Tačiau "bash" taip pat leidžia jums "peradresuoti" bet kurios komandos išvestį, išsaugant jį teksto failą, kad galėtumėte vėliau peržiūrėti išvestį.
Kai paleidžiate komandą "bash" eilutėje, ji paprastai spausdina šios komandos išvestį tiesiai į terminalą, todėl galite jį nedelsdami perskaityti. Tačiau "bash" taip pat leidžia jums "peradresuoti" bet kurios komandos išvestį, išsaugant jį teksto failą, kad galėtumėte vėliau peržiūrėti išvestį.

Tai veikia bet kokioje operacinėje sistemoje, nuo Linux ir MacOS iki "Windows 10" Ubuntu pagrįstos "bash" aplinkos.

Pirmas variantas: peradresuoti išvestį tik į failą

Norėdami naudoti bash redirection, paleiskite komandą, nurodykite

>

arba

>>

operatorius, tada pateikite failo kelią, į kurį norite peradresuoti produkciją.

  • >

    persiunčia komandos išvestį į failą, pakeičiant esamą failo turinį.

  • >>

    peradresuoja komandos išvestį į failą, pridedant išvesties prie esamo failo turinio.

Techniškai ši peradresuojama "stdout" - standartinė išvestis, kuri yra ekranas į failą.

Štai paprastas pavyzdys. The

ls

Komanda nurodo failus ir aplankus dabartiniame kataloge. Taip. kai paleisite šią komandą

ls

bus sąraše esamų aplankų rinkmenų ir aplankų. Tačiau jie nebus spausdinami į ekraną - jie bus įrašyti į jūsų nurodytą failą.

ls > /path/to/file

Jums nereikia nurodyti kelio į esamą failą. Nurodykite bet kurį galiojantį kelią ir bash sukurs failą toje vietoje.

Jei peržiūrėsite failo turinį, matysite
Jei peržiūrėsite failo turinį, matysite

ls

komandos išvestis. Pavyzdžiui,

cat

komanda spausdina failo turinį į terminalą:

cat /path/to/file

Atminkite, kad
Atminkite, kad

>

operatorius pakeičia esamą failo turinį su komandinės išvesties. Jei norite išsaugoti kelių komandų išvestį į vieną failą, naudokite

>>

operatorius. Pavyzdžiui, ši komanda pridės sistemos informaciją į norimą failą:

uname -a >> /path/to/file

Jei failas dar nėra, bash sukurs failą. Priešingu atveju, bash išeis iš esamo failo turinio ir pridės išvestį į failo pabaigą.

Kai peržiūrėsite failo turinį, pamatysite antrosios komandos rezultatus, pridėtus prie failo pabaigos:

Galite pakartoti šį procesą tiek kartų, kiek norite, kad failo pabaigoje pridedate išvestį.
Galite pakartoti šį procesą tiek kartų, kiek norite, kad failo pabaigoje pridedate išvestį.

Antroji parinktis: Paprastai spausdinimo išvestis ir nukreipimas į failą

Jums gali nepatinka nukreipti produkciją su

>

arba

>>

operatoriai, nes nematysite komandos išėjimo terminale. Štai kas

tee

komanda yra skirta. "Tee" komanda atspausdina įvesties informaciją, kurią ji gauna ekrane ir išsaugo jį failą tuo pačiu metu.

Norėdami perduoti komandų išvestį į

tee

spausdindami jį į savo ekraną ir įrašydami jį į failą, naudokite šią sintaksę:

command | tee /path/to/file

Tai pakeis bet kokį failą su komandos išvestį, kaip ir

>

operatorius.

Norėdami perduoti komandų išvestį į
Norėdami perduoti komandų išvestį į

tee

spausdinti į savo ekraną ir įrašyti jį į failą, bet pridėti jį prie failo pabaigos:

command | tee -a /path/to/file

Tai pridės išvesties failo pabaigoje, kaip ir

>>

operatorius.

Rekomenduojamas: