If-Koubou

Miten tallennat komentotiedoston tiedoston Bash-tiedostoon (ts. Linux- ja MacOS-terminaali)

Miten tallennat komentotiedoston tiedoston Bash-tiedostoon (ts. Linux- ja MacOS-terminaali) (Miten)

Kun suoritat komennon komentokehotteessa, se tulostaa normaalisti komennon tuotoksen suoraan päätelaitteeseen, jotta voit lukea sen välittömästi. Mutta bash antaa myös mahdollisuuden komennon tuottamiseen, tallentamalla sen tekstitiedostoon, jotta voit tarkastella tuotos myöhemmin.

Tämä toimii yhteistyössä missä tahansa käyttöjärjestelmässä, Linuxista ja macOS: stä Windows 10: n Ubuntu-pohjaiseen bashympäristöön.

Vaihtoehto 1: ohjata tuotos vain tiedostolle

Jos haluat käyttää bash-uudelleenohjausta, suoritat komennon, määritä > tai >> operaattori ja anna sitten tiedoston polku, johon haluat tuotoksen uudelleenohjauksen.

  •  > ohjaa komennon tuotoksen tiedostoon, joka korvaa tiedoston olemassa olevan sisällön.
  •  >> ohjaa komennon tuotos tiedostolle lisäämällä sen tiedoston olemassa olevaan sisältöön.

Teknisesti tämä ohjaa uudelleen, tavallisen lähdön, joka on näytön tiedosto.

Tässä on yksinkertainen esimerkki. ls komennossa luetellaan tiedostoja ja kansioita nykyisessä hakemistossa. Niin. kun suoritat seuraavan komennon, ls luetellaan tiedostoja ja kansioita nykyisessä hakemistossa. Mutta se ei tulosta niitä näyttöön - se tallentaa ne määritettyyn tiedostoon.

ls> / polku / tiedostoon / tiedostoon

Sinun ei tarvitse määrittää olemassa olevan tiedoston polkua. Määritä kelvollinen polku ja bash luo tiedoston kyseisellä sijainnilla.

Jos tarkastelet tiedoston sisältöä, näet ls komennon tuotos. Esimerkiksi kissa komento tulostaa tiedoston sisällön päätelaitteelle:

kissa / polku / tiedostoon / tiedostoon

Muista, että > operaattori korvaa tiedoston olemassa olevan sisällön komennolla. Jos haluat tallentaa useita komentoja yhdeksi tiedostoksi, käytä >> sijaan. Esimerkiksi seuraava komento liittää järjestelmätietosi määritettyyn tiedostoon:

uname -a >> / path / to / file

Jos tiedostoa ei ole vielä olemassa, bash luo tiedoston. Muuten bash jättää pelkästään tiedoston sisällön ja lisää tulostuksen tiedoston loppuun.

Kun tarkastelet tiedoston sisältöä, näet toisen komennon tulokset liitetiedoston loppuun:

Voit toistaa tämän prosessin niin monta kertaa kuin haluat liittää tulostuksen tiedoston loppuun.

Vaihtoehto kaksi: Tulosta tulostus normaalisti ja ohjata se tiedostoon

Et ehkä halua tuottaa uudelleenohjausta > tai >> koska et näe komennon tuottoa terminaalissa. Se mitä tii komento on. Tee-komento tulostaa sisääntulon, jonka se vastaanottaa näytölle ja tallentaa sen tiedostoon samanaikaisesti.

Komennon tuotoksen putoaminen tii, tulostamalla se näytölle ja tallentamalla se tiedostoon, käytä seuraavaa syntaksia:

komento | tee / path / to / file

Tämä korvaa tiedoston tiedoston komennolla, aivan kuten > operaattori.

Komennon tuotoksen putoaminen tii , tulostaa näytölle ja tallentaa sen tiedostoon, mutta liittää sen tiedoston loppuun:

komento | tee -a / path / to / file

Tämä liittää tulostuksen tiedoston loppuun, aivan kuten >> operaattori.

Yhteishuone sisältää joitakin muita, edistyneitä operaattoreita, jotka suorittavat samankaltaisia ​​toimintoja. Ne ovat erityisen hyödyllisiä, jos kirjoitat bash-komentosarjoja. Lisätietoja on kohdassa Lisäasetukset-komentotiedostojen I / O-uudelleenohjaus-luku.