13 September 2012

Batch script output (STDOUT) ve error (STDERR) handling:

Windows'ta ya da Linux'te yazdiginiz -ozellikle- uzun scriptlerin calismalari bittikten sonra ekrana getirdikleri ciktilari ve hata mesajlarini takip etmek zor olabilir. Bu yuzden scriptlerin tum ekran ciktilarini bir dosyaya output etmek oldukca saglikli bir cozumdur.

Ornek-1: "kopyala.cmd" isimli batch scriptinizin tum ekran goruntulerinin log.txt dosyasina cikartalim:

Win: # C:\kopyala.cmd > log.txt 2>&1
Linux: # ./kopyala.cmd > log.txt 2>&1

2>&1 ibaresi; hem calisan komutlarin normal ekran ciktilarini, hem de herhangi bir hata mesajinin kendisinden sonra adi verilen dosyaya yazilmasini saglar.

Ornek-2: Komutlarin ekran ciktilari "msg.txt" dosyasina, hata ciktilari da "err.txt" dosyasina yazdiralim:

Win: # C:\>kopyala.cmd > msg.txt 2> err.txt
Linux: # ./kopyala.cmd > msg.txt 2> err.txt

Not:
Linux: # ./kopyala.cmd > msg.txt 2> msg.txt
Yukaridaki komut Linux'te sorunsuz calisir. Ancak, ayni dosyaya yukaridaki formattaki gibi output etmek Windows'ta calismaz.

Diger kullanimlar ve detayli bilgi icin:
http://technet.microsoft.com/en-us/library/bb490982.aspx

No comments:

Post a Comment