O aplicativo que quero iniciar é o MongoDB. Se eu iniciar normalmente, fica assim:
Não gosto da quantidade de quebras de linha e tenho muito espaço na tela; portanto, gostaria de utilizar o referido espaço para nos livrar das quebras de linha.
Como posso alterar o tamanho da janela do console MODE
, escrevi um arquivo em lotes como este:
@ECHO OFF
MODE con:cols=140 lines=70
%~dp0mongodb\bin\mongod --dbpath %~dp0data --rest
Por enquanto, tudo bem. Quando inicio esse arquivo em lotes, recebo uma janela maior, conforme desejado.
Mas quando agora pressiono Ctrl+ Cpara sair do MongoDB, recebo o prompt irritante:
Terminate batch job (Y/N)?
O que é inútil, porque o comando do qual acabei de sair era o último comando no trabalho em lotes de qualquer maneira e não importa o que eu responda, o resultado é o mesmo.
Então, como posso obter uma janela maior do console para o aplicativo sem ter esse prompt quando clico em Ctrl+ C?
fonte
Tanto quanto entendi a pergunta, você deseja que o MongoDB tenha o tamanho especificado da janela do console e saia quando pressionar Ctrl+ C. Então a resposta é bem simples: use o atalho para iniciá-lo.
Não tenho
mongod
executável, então usariaperl.exe
como exemplo. Quando você o inicia na caixa de diálogo Executar ( Windows+ R), o tamanho da janela do console seria 80 × 25 padrão com tamanho de buffer para 300 linhas.mongod
(ouperl
no meu caso).mongod
.Agora, quando você clicar nesse atalho, a janela do console terá o tamanho especificado. Quando você pressiona Ctrl+ C, o aplicativo sai e a janela fecha sem nenhum aviso adicional.
Você também pode alterar o layout da janela depois de iniciá-la na caixa de diálogo Executar . Clique com o botão direito do mouse no título da janela do console e clique em Propriedades . Clique na guia Layout , ajuste o tamanho da janela e clique em OK para fechar as propriedades e aplicar as alterações imediatamente. (Se a janela foi iniciada a partir do atalho, as propriedades do atalho são atualizadas.)
Na próxima vez que você iniciar o mesmo aplicativo, o tamanho da janela do console será magicamente do mesmo tamanho. (Eu não o verifiquei desta vez, mas costumava funcionar.)
fonte
mongod.exe
não é fixa. Isso mudará dependendo da implantação do aplicativo. É por isso que eu estava buscando uma solução diretamente pelo console. Quando coloco um caminho relativo nos campos de destino ou diretório de trabalho para um atalho, ele não os aceita :(start cmd /k
e passa um parâmetro adicional ou define uma variável de ambiente. A segunda instância altera o tamanho da janela do console e iniciamongod.exe
.Terminate batch job (Y/N)?
prompt: \ Na verdade, acabei de implementar um aplicativo wrapper para resolver isso para mim.As configurações padrão de layout do console estão aqui no registro:
Você pode modificar essas configurações e elas serão aplicadas a TODAS as janelas de comando iniciadas, independentemente do caminho. Infelizmente, os valores brutos não são amigáveis ao ser humano.
Para defini-los da maneira que você deseja, abra uma janela de cmd comum e edite as configurações ao seu gosto. Procure no registro no caminho acima e você verá uma subchave em "Console" para cmd.exe. Exporte essa chave para um arquivo, altere o caminho para o acima e importe ou copie manualmente os valores de um para o outro. Você pode excluir a entrada específica do cmd.exe. Agora, todas as janelas de comando que abrirem usarão os padrões modificados.
Achei útil criar alguns arquivos de entrada do registro com meus padrões padrão, para que eu possa inseri-los facilmente em um novo servidor quando eu fizer o RDP pela primeira vez. Fiz predefinições para os dois tamanhos que normalmente uso.
Para 1024 x 768 (eu uso isso para servidores normalmente acessados através de uma ferramenta RDP de várias sessões):
Para 1280 x 1024:
fonte
Coloque o
Start
comando na frente de chamar mongodb. Eu acredito que deveria consertar isso.fonte
start /b
, deixa a janela do console aberta depois que eu pressiono Ctrl + C.Se você estiver feliz em executar um arquivo em lotes juntamente com alguns pequenos programas auxiliares, uma solução completa será postada por mim aqui:
Como um arquivo em lotes pode executar um programa e definir a posição e o tamanho da janela?
Conteúdo como abaixo. . . .
Esse arquivo em lote de demonstração executará um programa de linha de comando e definirá a posição e o tamanho da janela do console do Prompt de Comando. O tema geral deste lote é o mesmo das duas soluções anteriores (na página Estouro de pilha no link acima), mas havia alguns problemas e soluções alternativas para fazer esse trabalho - esta é uma janela de prompt de comando hospedada por 'CMD .EXE 'e não uma janela da GUI como' EXPLORER.EXE '.
Leia todos os comentários e a descrição no arquivo em lotes para obter mais informações.
Ferramentas utilizadas:
1. MonitorInfoView por Nir Sofer (41 KB)
2. NirCmd por Nir Sofer (43 KB)
3. GetPIDs por Daniel Scheibli (280 KB)
4. upx.exe --- é o programa de linha de comando que usaremos para esta demonstração; coloque-o no mesmo diretório que o arquivo em lotes.
5. Um arquivo em lote - veja abaixo
Reúna todos os cinco arquivos em um diretório. Este é o arquivo em lotes, pronto para ser executado em qualquer sistema Windows.
O que esse lote de demonstração fará, além de apresentar uma janela personalizada do console, é executado
upx.exe
com as opções da linha de comando--best -v -o getpids-compressed.exe getpids.exe
. Vamos compactar nossa ferramenta 'GetPIDs' para 88 KB ........ Após o lançamento, clique duas vezes na barra de título da janela do console para ver um fenômeno interessante; essa janela do console se comporta como uma GUI!fonte