Kuidas salvestada käsu väljund Bashile faili (mõni Linux ja macOS terminal)

Sisukord:

Kuidas salvestada käsu väljund Bashile faili (mõni Linux ja macOS terminal)
Kuidas salvestada käsu väljund Bashile faili (mõni Linux ja macOS terminal)

Video: Kuidas salvestada käsu väljund Bashile faili (mõni Linux ja macOS terminal)

Video: Kuidas salvestada käsu väljund Bashile faili (mõni Linux ja macOS terminal)
Video: Building Apps for Mobile, Gaming, IoT, and more using AWS DynamoDB by Rick Houlihan - YouTube 2024, November
Anonim
Kui käivitate käsku bash-kiirelt, trükib see tavaliselt selle käsu väljundi otse terminali, nii et saate seda kohe lugeda. Kuid ka bash võimaldab teil "suunata" iga käsu väljundit, salvestades selle tekstifaili, nii et saate hiljem väljundit vaadata.
Kui käivitate käsku bash-kiirelt, trükib see tavaliselt selle käsu väljundi otse terminali, nii et saate seda kohe lugeda. Kuid ka bash võimaldab teil "suunata" iga käsu väljundit, salvestades selle tekstifaili, nii et saate hiljem väljundit vaadata.

See toimib operatsioonisüsteemis bash, Linuxist ja macOSist kuni Windows 10 Ubuntu baasil baseeruvasse keskkonda.

Variant 1: ümbersuunamine väljundisse ainult faili

Kasutades bash redirecki, käivitate käsu, määrake

>

või

>>

operaator ja seejärel esitage faili fail, mida soovite, et väljund suunataks.

  • >

    redirects käsu väljund failile, asendades faili olemasoleva sisu.

  • >>

    redirects käsu väljund failile, lisades faili olemasolevale sisule väljundi.

Tehniliselt redirects "stdout" - standardväljund, mis on faili ekraan.

Siin on lihtne näide. The

ls

käsk nimekirjad aktiivse kataloogi failidest ja kaustadest. Nii kui käivitate järgmise käsu

ls

loetleb aktiivse kataloogi failid ja kaustad. Kuid see ei prindi neid ekraanile - see salvestab need teie määratud faili.

ls > /path/to/file

Te ei pea olemasolevale failile tee määrama. Määrake mis tahes kehtiv tee ja bash loob faili selles asukohas.

Kui vaatate faili sisu, näete seda
Kui vaatate faili sisu, näete seda

ls

käsu väljund. Näiteks:

cat

käsk faili sisu trükkimiseks terminalile:

cat /path/to/file

Pidage meeles, et
Pidage meeles, et

>

käitaja asendab faili olemasolevat sisu käsu väljundiga. Kui soovite salvestada mitme käsu väljundi ühte faili, kasutage seda

>>

operaator. Näiteks lisab teie määratud failile süsteemiteave järgmise käsu:

uname -a >> /path/to/file

Kui faili pole veel olemas, siis bash loob faili. Muidu bash jätab faili olemasoleva sisu ja lisab faili lõppu väljundi.

Kui vaatate faili sisu, näete teise käsu tulemusi faili lõpus:

Seda protsessi saab korrata nii mitu korda kui soovite, et faili lõppu säilitada.
Seda protsessi saab korrata nii mitu korda kui soovite, et faili lõppu säilitada.

Teine võimalus: printige väljund tavaliselt ja suunake see faili

Võib-olla ei meeldi väljundi ümbersuunamine

>

või

>>

operaatorid, kuna te ei näe käskluse väljundit terminalis. Just sellel

tee

käsk on mõeldud. Teekäsk prindib ekraanile sisestatud sisendi ja salvestab selle faili samaaegselt.

Käsu väljundi toru sisestamiseks

tee

trükkides selle ekraanile ja salvestades faili, kasutage järgmist süntaksit:

command | tee /path/to/file

See asendab failis kõik faili käsuga, nagu näiteks

>

operaator.

Käsu väljundi toru sisestamiseks
Käsu väljundi toru sisestamiseks

tee

printige oma ekraanile ja salvestage see faili, aga lisage see faili lõppu:

command | tee -a /path/to/file

See lisab väljundi faili lõpuni, nagu ka

>>

operaator.

Soovitan: