Ohjaa ulostulo Windowsin komentoriviltä tekstitiedostoon
Yksi hyödyllisimmistä tavoista kirjata ja suorittaa Windowsissa(Windows) suorittamiesi komentojen tai erätöiden toiminnan vianmääritystä on ohjata tuloste tiedostoon.
Voit kuitenkin ohjata komentorivin kirjoituksia tiedostoon muutamalla eri tavalla. Valitsemasi vaihtoehto riippuu siitä, kuinka haluat nähdä komennon tulosteen.
Kuinka Windowsin komentokehotetulostus toimii(How Windows Command Prompt Output Works)
Kun kirjoitat komennon Windows - konsoliin ( komentokehote(command prompt) ), komennon tulos menee kahteen erilliseen tietovirtaan.
- STDOUT : Standard Out on minne komentojen vakiovastaukset menevät. Esimerkiksi DIR - komennon vakiovastaus on luettelo tiedostoista hakemiston sisällä.
- STDERR : Normaali virhe(Standard Error) on paikka, johon virheilmoitukset menevät, jos komennossa on ongelma. Esimerkiksi jos hakemistossa ei ole tiedostoja, DIR - komento tulostaa " Tiedostoa(File) ei löydy" Standard Error -virtaan.
Voit ohjata tulosteen uudelleen tiedostoon Windowsissa(Windows) molemmille tulosteille.
Ohjaa vakiotulosteen kirjoitus uuteen tiedostoon(Redirect Standard Output Write to New File)
Voit ohjata komennon vakiotulosteen tiedostoon kahdella tavalla. Ensimmäinen on lähettää komennon tuloste kirjoittaa uuteen tiedostoon aina, kun suoritat komennon.
Voit tehdä tämän avaamalla komentokehotteen ja kirjoittamalla:
dir test.exe > myoutput.txt
Merkki > käskee konsolia tulostamaan STDOUT antamasi(STDOUT) nimen tiedostoon.
Kun suoritat tämän komennon(run this command) , huomaat, että komentoikkunassa ei ole muuta vastausta kuin virhe, jonka mukaan tiedostoa ei ole olemassa.
Tämä johtuu siitä, että komennon vakiotulostus ohjattiin tiedostoon, jonka nimi on myoutput.txt. Tiedosto on nyt samassa hakemistossa, jossa suoritit komennon. Vakiovirhetulostus näkyy edelleen normaalisti.
Huomautus(Note) : Muista vaihtaa komentokehotteen aktiivinen hakemisto(change the active directory) ennen komennon suorittamista. Näin tiedät, mihin tulostiedostot on tallennettu.
Voit tarkastella tiedostoon menneitä vakiotulosteita kirjoittamalla komentoikkunaan "myoutput.txt". Tämä avaa tekstitiedoston oletustekstitiedostojen katseluohjelmassasi. Useimmille ihmisille tämä on yleensä Notepad.exe .
Kun seuraavan kerran suoritat saman komennon, edellinen tulostiedosto poistetaan. Uusi tulostiedosto luodaan uudelleen viimeisimmän komennon tulosteella.
Uudelleenohjaa vakiotulostuskirjoitukset(Standard Output) samaan tiedostoon(Same File)
Entä jos et halua korvata samaa tiedostoa? Toinen vaihtoehto on käyttää >> sijaan > ohjata tulostiedostoon. Tämän esimerkin tapauksessa kirjoitat:
dir test.exe >> myoutput.txt
Näet saman tulosteen (vain virhe).
Mutta tässä tapauksessa tulostiedoston korvaamisen sijaan tämä komento liittää uuden tulosteen olemassa olevaan tulostiedostoon.
Aina kun suoritat komennon ja liität tulosteen tiedostoon, se kirjoittaa uuden vakiotulosteen olemassa olevan tiedoston loppuun.
Ohjaa vakiovirhe tiedostoon(Redirect Standard Error To a File)
Samalla tavalla kuin voit ohjata vakiotulosteen kirjoituksia tiedostoon, voit myös tulostaa normaalin virhevirran tiedostoon.
Tätä varten sinun on lisättävä komennon loppuun 2> ja sen jälkeen tulostevirhetiedosto, jonka haluat luoda.
Tässä esimerkissä kirjoitat komennon:
dir test.exe > myoutput.txt 2> output.err
Tämä lähettää vakiolähtövirran tiedostoon myoutput.txt ja normaalin virhevirran tiedostoon output.err. Tuloksena on, että konsoli-ikkunassa ei näytetä lainkaan lähtövirtaa.
Näet kuitenkin virheilmoitukset kirjoittamalla output.err . Tämä avaa tiedoston oletustekstitiedostojen katseluohjelmassasi.
Kuten näet, kaikki komennon virheilmoitukset tulostetaan virhetiedostoon. Aivan(Just) kuten vakiolähdössä, voit käyttää >> sen sijaan liittääksesi virheen aiemmin suoritettujen komentojen virheisiin.
Ohjaa kaikki ulostulokirjoitukset samaan tiedostoon(Redirect All Output Writes to a Same File)
Kaikki yllä olevat lähestymistavat johtavat useisiin tiedostoihin. Yksi tiedosto on vakiotulostevirtaa ja toinen normaalia virhevirtaa varten.
Jos haluat sisällyttää nämä molemmat lähdöt samaan tiedostoon, voit myös tehdä sen. Tätä varten sinun tarvitsee vain ohjata kaikki tulosteet samaan tiedostoon seuraavalla komennolla.
dir test.exe 1> myoutput.txt 2>&1
Näin tämä komento toimii:
- Vakiotulostus ohjataan tulostiedostoon, joka on merkitty tulostenumerolla 1.
- Numerolla 2 merkitty vakiovirhetuloste ohjataan numerolla 1 merkittyyn tulostetiedostoon.
Tämä lisää virhetulosteen vakiotulosteen loppuun.
Tämä on hyödyllinen tapa nähdä minkä tahansa komennon kaikki tulosteet yhdessä tiedostossa.
Vakio- tai virhelähtövirtojen hiljentäminen(Silencing Standard or Error Output Streams)
Voit myös kytkeä joko vakiolähdön(Standard Output) tai vakiovirheen(Standard Error) pois päältä ohjaamalla lähdön NUL :iin tiedoston sijaan.
Yllä olevan esimerkin avulla voit käyttää seuraavaa komentoa , jos haluat vain vakiolähdön (Standard Output)etkä(Standard Error) ollenkaan vakiovirhettä:
dir test.exe 1> myoutput.txt 2>nul
Tämä johtaa samaan tulostiedostoon kuin yllä olevassa ensimmäisessä esimerkissä, jossa ohjasit vain vakiotulosteen(Standard Output) , mutta tällä komennolla virhe ei toistu konsolin sisällä. Se ei myöskään luo virhelokitiedostoa.
Tämä on hyödyllistä, jos et välitä virheistä etkä halua niiden aiheuttavan haittaa.
Voit suorittaa minkä tahansa yllä olevista samoista tulostuskomennoista BAT-tiedoston sisältä(inside a BAT file) , jolloin rivin tuloste siirtyy määrittämääsi tulostustiedostoon. Tämä on hyödyllinen tapa nähdä, onko BAT - tiedoston komennoissa virheitä, kun niitä yritettiin suorittaa.
Related posts
Tallenna käynnissä olevien prosessien luettelo tekstitiedostoon Windowsissa
Taskkill-komennon käyttäminen Windows 10/11:ssä
Tekstin poistaminen Windowsin tehtäväpalkin kuvakkeista
Estä pääsy komentokehotteeseen Windowsissa
Poista tekstitunnisteet työpöydän kuvakkeista Windows 7/8/10:ssä
Kuinka käyttää FINDSTR- ja Select-String-komentoja Windows 11/10:ssä
Komentorivin näyttäminen Windows 11/10:n Task Managerissa
Ota mikrofoni, linjatuloääni ja stereosekoitus käyttöön Windowsissa
Kuinka avata 7Z-tiedostoja Windowsissa, Macissa ja Linuxissa
Kuinka tappaa prosessi komentorivillä Windows 11/10:ssä
Käytä FTP-palvelinta komentokehotteen avulla Windows 10:ssä
Ryhmäkäytännön päivityksen pakottaminen Windows 2000:ssa, XP:ssä, Vistassa, 8:ssa ja 10:ssä
Microsoft Store -sovellusten avaaminen komentokehotteesta
Kuinka pitää Windows-tietokoneesi hereillä koskematta hiireen
Etsi useista tekstitiedostoista kerralla
Kuinka avata JAR-tiedosto Windowsissa
Swiss File Knife on hyödyllinen komentorivityökalu Windowsille
Kuinka saada mikä tahansa sovellus tai peli koko näytön kokoiseksi Windowsissa
HTML-koodi tekstin käärimiseksi kuvan ympärille
Kirja-arvostelu - Windows 8 -käyttöopas