Mais linhas na janela de comando

106

Existe a possibilidade de obter "mais" linhas na janela de comando (Console)?

Quando depuro meus programas, produzo um monte de linhas na janela e o início da saída continua desaparecendo do intervalo, posso rolar para trás na janela para não ver minha saída completa desde o início do programa.

Como faço para que a janela de comando mantenha todas as linhas?

(E sim, eu poderia muito bem escrever em um arquivo de texto como um registro, mas gostaria de tentar assim para uma mudança)

FP
fonte
1
esta não é uma questão de programação. a resposta, no entanto, é: sim: na janela: Alt-Space, 'p' para propriedades, está na primeira guia dessa caixa de diálogo.
Heath Hunnicutt

Respostas:

184

Pelo menos no Win7, a resposta de Kristina agora parece ser a memória de comandos digitados nas linhas de comando ou a quantidade que você pode copiar e colar.

Para aumentar a memória da barra de rolagem, fiz o seguinte:

  • Acesse as propriedades mencionadas por Kristina
  • Vá para a guia de layout (que é a terceira)
  • Modifique a altura do buffer de tela - 9999 é o máximo.

Conforme mencionado por Joey nos comentários à resposta de Kristina, isso não funcionará em coisas que você já fez - apenas em coisas que você fizer depois de fazer a mudança.

Esta resposta foi escrita originalmente quando a de Kristina foi marcada como aceita. Agora que esta é a resposta aceita, editei minha resposta para evitar confusão.

Scott Mermelstein
fonte
Desculpe, não respondi antes; Eu respondi mentalmente enquanto dirigia, mas nunca anotei a resposta. Você provavelmente deve colocar sua pergunta como uma pergunta separada, não que eu esteja buscando pontos, mas que uma resposta completa levaria mais de 600 caracteres, e você poderia adicionar marcas diferentes para obter respostas melhores.
Scott Mermelstein
Porém, respostas imediatas: não é provável, usando o processamento em lote padrão. As linhas que você pode rolar para trás fazem parte da janela que encapsula o prompt de comando, não o próprio prompt. Eu olhei cmd /?e não havia nenhuma referência a isso. Dito isso, tenho certeza de que esse valor está armazenado em algum lugar do registro e você pode alterar as configurações do registro por meio da linha de comando, portanto, deve ser possível fazer. Gostaria de questionar se isso é realmente o que você precisa, porém, e não tenho certeza se isso alteraria a instância da janela em que você está executando atualmente.
Scott Mermelstein
2
Funciona no Windows 10
Alex Egli
29

Só para complementar a (s) resposta (s) acima, também é possível exportar as linhas para um arquivo txt utilizando > fileName.txt

Por exemplo:

myProgram.exe > output.txt // will create a new file with all the output of myProgram
Sergio
fonte
1
Isto é brilhante!
Mostafa
1
Você pode adicionar "2> & 1 'para capturar linhas STDERR também.> MyProgram.exe> ​​output.txt 2> & 1 é do unix, mas por algum motivo também funciona no cmd.
mauromartini
14

Se você estiver usando o Windows, clique no ícone CMD no canto superior esquerdo e vá para propriedades.

Clique na guia Opções.

Em Command History, digite ou selecione 999 em Buffer Size e, a seguir, digite ou selecione 5 em Number of Buffers.

Kristina Brooks
fonte
Não parece funcionar, ainda não consigo rolar para o topo ... parece que saio muitas linhas ...
FP
1
Não afeta o que você já imprimiu. O que saiu do buffer desapareceu. Você deve executar o programa novamente após a alteração. Além disso, o tamanho máximo de um buffer é 9999 linhas, você também pode usar isso.
Joey
Ok, agora funciona, mas só depois de alterar a altura do buffer da janela para um pouco mais alta do que antes. Obrigado pelo conselho :)
FP
11
Isso aumenta o histórico de comandos que você pode chamar pressionando para cima (ou F7), não o tamanho do buffer da tela. A resposta de Scott é o que você está procurando, eu acredito.
cloudshao
por favor, adicione um espaço entre 'ou' e 'selecionar'
Mengfan Ma