Bagaimana cara menjaga semua output program pada baris perintah Windows?

31

Katakanlah Anda memiliki program yang memberikan banyak output. Tampaknya Command Prompt sayangnya tidak menyimpan semuanya (hanya sejauh ini Anda dapat menggulir ke atas).

Apakah ada cara untuk menyimpan semua itu?

Nathaniel
sumber

Jawaban:

28

Meningkatkan ukuran buffer adalah cara terbaik jika Anda hanya ingin menggulir ke atas dan melihat hasilnya, yang dapat Anda konfigurasikan di properti.

Jika Anda menambahkan file, Anda juga mungkin menginginkan kesalahan jika ada:

C: \> somecommand.exe> ​​"C: \ path \ to \ output.txt" 2> & 1

Jika Anda ingin pager, ada moreatau kurang untuk Windows .

contoh:

C: \> somecommand.exe | kurang

Anda kemudian dapat menggunakan funtuk maju atau bmundur.

John T
sumber
Jawaban yang paling komprehensif, saya pikir. Itu kebetulan John T. Apa yang kamu tahu.
Nathaniel
@Nathaniel, apakah itu hal buruk = [] ... :)
John T
Nah, saya hanya ingin menyodok Anda dan Molly. Saya tidak berpikir saya benar-benar menyukai banyak hal. Tidak terlihat secantik namanya.
Nathaniel
@ JohnT, Apa perintah cmd (sebagai lawan UI) untuk meningkatkan ukuran buffer?
Pacerier
1
FYI, Anda perlu mengkonfigurasi Layout> Screen Buffer Size> Height, tidak Options> Command History> Buffer Size.
mythofechelon
8

Untuk hanya menangkap keluaran ke file, lihat jawaban lain. Anda juga dapat meningkatkan jumlah ke teks yang dapat Anda gulir ke belakang dan melihat hingga batas.

Dengan jendela command prompt terbuka, klik ikon [C:] di bilah judul untuk membuka menu dan memilih properti. Di bawah tab Layout, ubah Ukuran Layar Penyangga-> Tinggi ke 9999. Itu akan memungkinkan Anda untuk menggulir kembali banyak baris di jendela.

Donald Byrd
sumber
7

Apakah Anda menggunakan Windows XP jika demikian Anda dapat menambahkan perintah Anda | more

Atau Anda bisa menggunakan

perintah operator pengalihan

. Halaman
ini memiliki lebih banyak info untuk Anda.

Kevin Boyd
sumber
3
moreada sejak Zaman Kegelapan dari DOS ...
Joey
5

Keluarkan hasilnya ke file, seperti ini:

C:> RunMyProgram.exe > outputfile.txt
Rob Farley
sumber
+1 Saya akan menjawab ini tetapi saya mencari cara yang lebih baik dan tidak melihatnya. Anda dapat meningkatkan ukuran buffer menjadi 999 dan jumlah buffer menjadi 999, tetapi tergantung pada seberapa besar "banyak output" apakah ini mungkin tidak praktis, terutama ketika Anda pergi untuk menyimpannya. Anda, program Anda, memerlukan interaksi pengguna. Anda harus membaca file teks untuk mengetahui apa pertanyaannya sehingga Anda dapat menjawabnya. Sayang sekali Windows tidak memiliki cara untuk membuang log dan menjaga tampilan buffer tetap normal.
Scott McClenning
@Scott: Jumlah buffer output tidak relevan untuk berapa banyak baris yang dapat ditampilkan. Di satu sisi mereka seperti buffer bingkai untuk grafik; Anda dapat menulis kepada mereka dan mengalihkan tampilan ke yang lain. Namun, ukuran buffer naik hingga 9999 yang cukup untuk sebagian besar kebutuhan.
Joey
3

Anda dapat meningkatkan ukuran buffer pada histori perintah (default ke 50) pada properti. Anda dapat mencoba sesuatu seperti 500 atau bahkan 5000, daripada yang seharusnya dapat Anda gulir lebih banyak.

cara lain adalah dengan mengarahkan output ke file menggunakan karakter ">":

ex:

C:> someCommand> output.txt

daripada membuka file txt dan Anda akan melihat output untuk perintah di sana.

Decio Lira
sumber