Apakah ada pintasan keyboard untuk menjeda output dari jendela CMD saat sedang berjalan?


14

Saya sedang menjalankan skrip batch yang memakan waktu sangat lama dan yang hasilnya melesat dengan laju yang tidak dapat dibaca. Apakah ada pintasan keyboard yang memungkinkan Anda untuk menjeda konsol CMD di mana saat ini adalah untuk berhenti dan membaca output, dan kemudian mulai lagi dari tempat yang sama?

masukkan deskripsi gambar di sini


5
Selalu ada CTRL-S. Kemudian CTRL-Q untuk memulai kembali.
BillP3rd

Anda dapat mengambil kotak gulir dan memindahkannya ke atas, ini akan secara efektif menghentikan pengguliran. Anda kemudian dapat menekan tombol panah ke bawah untuk pindah ke bagian bawah buffer.
Burhan Khalid

Bukankah ini tujuan dari tombol "Kunci Gulir"?
TOOGAM

Jawaban:


5

Saya tidak melihat ini di jawaban lain.

Saya percaya urutan kontrol serial 'Ctrl-S' XOFF dan 'Ctrl-Q' XON adalah urutan kunci yang dimaksudkan untuk menyelesaikan masalah.

Silahkan lihat;

XON / XOFF


1
Saya mengubah ini menjadi jawaban terbaik karena beberapa alasan. Dari penelitian, tombol Pause / Break pada sendiri menghentikan output, tetapi tidak eksekusi, yang jawaban lain tidak menyebutkan. Ctrl + Pause / Break harus digunakan untuk menghentikan eksekusi, dan ini sedikit lebih rumit untuk mengetik pada kebanyakan keyboard daripada Ctrl + S dan Ctrl + Q (hanya dapat dilakukan dengan tangan kiri). Yang mengatakan, Ctrl + Pause / Break memiliki keuntungan yang tidak perlu Anda ingat dua keybindings tambahan, jadi kedua jawaban itu baik, saya hanya ingin melihat ini mendapatkan upvotes yang layak.
Hashim

Perhatikan bahwa meskipun jawaban ini sumber pertanyaan Unix / Linux, keybindings berfungsi dengan baik pada CMD.exe, setidaknya pada OS Windows 7 saya.
Hashim

1
@Hashim, terima kasih telah berbagi penelitian Anda. Karena Anda secara khusus bertanya bagaimana menghentikan sementara output , saya tidak mempertimbangkan (atau menguji) kemungkinan ini, tetapi itu bagus untuk dipelajari. (Terpilih)
Marc.2377

16

Apakah keyboard Anda mengandung Pause/Breakkunci? Ini akan berfungsi dengan baik untuk ini. Begini tampilannya, atau setidaknya digunakan untuk:

Jeda Istirahat Kunci dari Wikipedia

Sebagai bonus yang menarik, tombol ini juga dapat digunakan selama POST (Uji Daya Mandiri, yang berjalan saat komputer dinyalakan) untuk membaca output dari BIOS.

Jika Anda tidak memiliki kunci itu, kombinasi Control+ NumLockharus berfungsi sama, dan ada opsi lain tergantung pada pabrikan Anda, menurut Wikipedia .

Untuk melanjutkan eksekusi, tekan Enter.


Catatan pada beberapa keyboard Anda mungkin memiliki kunci kunci gulir tertentu (biasanya ditandai ScrLk), yang dapat melayani tujuan yang sama.
Burhan Khalid

@ BurhanKhalid Yah, saya membaca tautan yang menghentikan sementara output , tetapi tidak mengeksekusi , dan efek ini tampaknya tidak berlaku untuk konsol MS Windows ... tapi keren untuk tahu
Marc.2377

1
Dengan ping, tampaknya menghentikan eksekusi. itu sangat aneh, karena ping adalah executable diskrit. Selain itu ketika dijeda, proses ping.exe tetap dalam proses explorer sampai diizinkan untuk menyelesaikan. saat berhenti, semua utasnya masuk Wait:Executive, dan sepertinya tidak berdenyut secara berkala. Menarik.
Frank Thomas

2
Trik lain yang ingin saya gunakan adalah menandai beberapa teks dengan mouse (saya selalu mengaktifkan mode quickedit). Itu menghentikan output (dan karenanya eksekusi, karena program yang menulis ke stdout menunggu hingga aliran ditulis) juga.
THS

1

Anda dapat menggunakan perintah "lebih". Meskipun tidak persis apa yang Anda cari, itu akan membatasi output layar per halaman.


1
Ini adalah solusi terbaik karena menjeda output pada saat yang tepat hampir tidak mungkin mengingat kecepatan di mana output umumnya dihasilkan. Untuk klarifikasi Anda harus menggunakan pipa setelah perintah Anda diikuti oleh LEBIH. Misalnya NETSH HTTP SHOW SSLCERT | LEBIH BANYAK
Vincent

Windows tidak memiliki 'lebih' asli
KumarAnkit

1

Menambahkan satu lagi cara bermanfaat untuk cangkang linux . (Tapi mungkin ok di windows juga, coba!)

Menekan ctrl+z akan menggantung program. (Pesan: dihentikan)

Untuk menjalankannya kembali pada keadaan sebelumnya, seperti jika dijeda:

Tipe fg

Atau untuk banyak penggunaan: program_name_previously_ctrl + z_stopped `fg


0

Ada beberapa metode lain di sini untuk ditambahkan, jika kita teliti:

1) Selain tombol Pause / Break Anda dapat menduplikasi fungsinya dengan Menggunakan "CTRL + C".

Ini akan menyebabkan skrip cmd berhenti dan bertanya apakah Anda ingin menghentikannya. Setelah selesai mencari, Anda dapat memilih "TIDAK" (atau mungkin ya jika itu cocok untuk Anda) dan itu akan terus berlanjut (Atau keluar, jika Anda memilih ya).

2) Anda juga dapat berhenti menggunakan mouse dengan mengklik kursor mouse Anda di jendela untuk memilih teks dari Terminal CMD.

Anda mungkin telah memperhatikan output jeda ini di masa lalu dan berpikir hanya output yang akan ditunda, namun ketika skrip berjalan dalam contoh cmd interaktif, Anda sebenarnya menghentikan eksekusi kode (sama seperti dengan "Jeda / Istirahat" dan "CTRL + C "Metode).

Namun begitu jendela kehilangan fokus, atau Anda mengklik untuk menghentikan sementara hal-hal, eksekusi kode akan berlanjut, dan Anda tidak memiliki pilihan untuk mengakhiri kode melalui cara ini.


Wow, kalian masih muda. Tidak pernah menggunakan terminal serial? Coba Ctrl-s / Ctrl-Q
NetScr1be

Perangkat lunak terminal emulator umumnya mengimplementasikan dukungan XOFF / XON sebagai fungsi dasar. Ini biasanya termasuk konsol sistem pada mesin Unix dan Linux modern, serta emulator GUI seperti xterm dan konsol Win32.
NetScr1be

0

Pada sistem windows, jika layar output telah mengaktifkan Mode Edit Cepat (dengan Konfigurasi) cukup klik pada layar dan pilih bagian mana pun dari layar. Program akan menghentikan eksekusi hingga Anda mengklik kanan layar untuk membatalkan pilihan. Layar bisa kehilangan fokus dan akan terus membeku sampai Anda kembali dan klik kanan padanya. Berhati-hatilah bahwa konten apa pun dari Clipboard, jika ada, dapat dibalik layar itu ketika Anda mengklik kanan padanya.

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.