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 "stdout" -standardin, 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 > /path/to/file
Sinun ei tarvitse määrittää olemassa olevan tiedoston polkua. Määritä kelvollinen polku ja bash luo tiedoston kyseisellä sijainnilla.
ls
komennon tuotos. Esimerkiksi
cat
komento tulostaa tiedoston sisällön päätelaitteelle:
cat /path/to/file
>
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:
Vaihtoehto kaksi: Tulosta tulostus normaalisti ja ohjata se tiedostoon
Et ehkä halua tuottaa uudelleenohjausta
>
tai
>>
koska et näe komennon tuottoa terminaalissa. Se mitä
tee
komento on. Tee-komento tulostaa sisääntulon, jonka se vastaanottaa näytölle ja tallentaa sen tiedostoon samanaikaisesti.
Komennon tuotoksen putoaminen
tee
tulostamalla se näytölle ja tallentamalla se tiedostoon, käytä seuraavaa syntaksia:
command | tee /path/to/file
Tämä korvaa tiedoston tiedoston komennolla, aivan kuten
>
operaattori.
tee
tulostaa näytölle ja tallentaa sen tiedostoon, mutta liittää sen tiedoston loppuun:
command | tee -a /path/to/file
Tämä liittää tulostuksen tiedoston loppuun, aivan kuten
>>
operaattori.