Como redefinir o terminal no Cygwin?

1

No Linux, posso limpar a saída do terminal com um simples reset da linha de comando. No Cygwin, parece que reset não funciona:

Eutambémtenteireset0ereset1semalegria.EeuatétenteiocomandonativodoWindows'clssemalegria.

OCygwinparecenãoternenhumadocumentaçãoútil:

$man-kresetreset:nothingappropriate.$man-kterminalterminal:nothingappropriate.$manreset1NomanualentryforresetNomanualentryfor1(Alternatively,whatmanualpagedoyouwantfromsection1?)

ComofaçopararedefiniroterminalapartirdalinhadecomandoaousaroCygwin?Oqueestáfaltandonocomandoacima?

UmrelatóriodebugfoiarquivadocomaCygwinparaesteproblema: Bug 19195: O terminal Cygwin não responde a nenhum deles. redefinir 'ou' cls '.

    
por jww 01.07.2015 / 01:48

5 respostas

5

Em Cygwin, parece que a reinicialização não funciona

  • Você está executando uma versão que não é do Cygwin de reset .

  • Você pode confirmar isso executando where reset em um prompt de comando.

Notas:

  • c:\windows\system32\reset.exe é Utilitário de redefinição de serviços de área de trabalho remota

  • Asaídaquevocêmostranasuaperguntapareceserdestaversãoderedefinição(enãodaversãodoCygwin).

ConfiguraçãodoPATHdoCygwin

Sevocêinstalouopacotencurses(vejaabaixo),entãovocêprecisatercertezaqueseuCygwinPATHtemoselementosCygwinantesdoselementosdoWindows(issodeveacontecerautomaticamentequandooCygwinforinstalado).

Exemplodecaminhodocygwin:

DavidPostill@Hal/f/test$echo$PATH.:/home/DavidPostill/bin:/usr/local/bin:/usr/bin:/c/ProgramData/Oracle/Java/javapath:/c/Windows/system32:/c/Windows:/c/Windows/System32/Wbem:/c/Windows/System32/WindowsPowerShell/v1.0:/c/apps/Calibre

ReinicializaçãodoCygwin

OCygwinresetfazpartedopacotencurseseestávinculadoatset.

Osparâmetrosparatsetsãoopcionais.

Vocêpodedeterminarqueissoestánoseusistemausando:

whichreset

Nomeusistema:

DavidPostill@Hal~$whichreset/usr/bin/resetDavidPostill@Hal~$ll/usr/bin/resetlrwxrwxrwx1DavidPostillNone8Jul108:14/usr/bin/reset->tset.exe

Cygwincleartambémfazpartedencurses.Eutenhoclsaliascomosegue:

aliascls='clear'

Notas:

  • Vocêsemprepodedescobrirquaispacotescontêmdeterminadoscomandosdocygwinusando Pacotes de pesquisa .

  • clear e reset têm um comportamento ligeiramente diferente:

    • clear limpa a parte visível da exibição mintty . O buffer de rolagem permanece como está.

    • reset envia a sequência de inicialização do terminal . No caso de mintty , isso limpa a parte visível da exibição e remove o buffer de rolagem.

Como posso verificar se o ncurses está instalado?

Para ver se um pacote está instalado, use cygcheck -l ncurses .

  • -l package - lista o conteúdo do pacote (ou todos os pacotes, se nenhum for fornecido)
DavidPostill@Hal /f/test
$ cygcheck -l ncurses
/usr/bin/captoinfo
/usr/bin/clear.exe
/usr/bin/infocmp.exe
/usr/bin/infotocap
/usr/bin/reset
/usr/bin/tabs.exe
/usr/bin/tic.exe
/usr/bin/toe.exe
/usr/bin/tput.exe
/usr/bin/tset.exe
/usr/share/doc/ncurses/ANNOUNCE
/usr/share/doc/ncurses/AUTHORS
/usr/share/doc/ncurses/COPYING
/usr/share/doc/ncurses/NEWS
/usr/share/doc/ncurses/README
/usr/share/man/man1/captoinfo.1m.gz
/usr/share/man/man1/clear.1.gz
/usr/share/man/man1/infocmp.1m.gz
/usr/share/man/man1/infotocap.1m.gz
/usr/share/man/man1/reset.1.gz
/usr/share/man/man1/tabs.1.gz
/usr/share/man/man1/tic.1m.gz
/usr/share/man/man1/toe.1m.gz
/usr/share/man/man1/tput.1.gz
/usr/share/man/man1/tset.1.gz

O que está incluído no pacote ncurses?

2015-05-18 21:00           0 usr/bin/
2015-05-18 20:58           0 usr/bin/captoinfo -> tic.exe
2015-05-18 21:00        9747 usr/bin/clear.exe
2015-05-18 21:00       52755 usr/bin/infocmp.exe
2015-05-18 20:58           0 usr/bin/infotocap -> tic.exe
2015-05-18 20:58           0 usr/bin/reset -> tset.exe
2015-05-18 21:00       14355 usr/bin/tabs.exe
2015-05-18 21:00       67091 usr/bin/tic.exe
2015-05-18 21:00       15379 usr/bin/toe.exe
2015-05-18 21:00       15379 usr/bin/tput.exe
2015-05-18 21:00       19475 usr/bin/tset.exe
2015-05-18 20:58           0 usr/share/doc/
2015-05-18 20:58           0 usr/share/doc/ncurses/
2015-05-18 20:58       13750 usr/share/doc/ncurses/ANNOUNCE
2015-05-18 20:58        2529 usr/share/doc/ncurses/AUTHORS
2015-05-18 20:58        1408 usr/share/doc/ncurses/COPYING
2015-05-18 20:58      549943 usr/share/doc/ncurses/NEWS
2015-05-18 20:58       10212 usr/share/doc/ncurses/README
2015-05-18 20:59           0 usr/share/man/man1/
2015-05-18 20:57        2919 usr/share/man/man1/captoinfo.1m.gz
2015-05-18 20:57        1201 usr/share/man/man1/clear.1.gz
2015-05-18 20:57        6976 usr/share/man/man1/infocmp.1m.gz
2015-05-18 20:57        1594 usr/share/man/man1/infotocap.1m.gz
2015-05-18 20:59          39 usr/share/man/man1/reset.1.gz
2015-05-18 20:57        2288 usr/share/man/man1/tabs.1.gz
2015-05-18 20:57        5995 usr/share/man/man1/tic.1m.gz
2015-05-18 20:57        1883 usr/share/man/man1/toe.1m.gz
2015-05-18 20:57        4540 usr/share/man/man1/tput.1.gz
2015-05-18 20:57        4971 usr/share/man/man1/tset.1.gz

Fonte ncurses: exibição do terminal utilitários (binários instalados e arquivos de suporte)

    
por 01.07.2015 / 09:33
2

Experimente clear - deve fazer o que quiser.

Editar: faz parte do pacote ncurses , não instalado por padrão.

    
por 01.07.2015 / 02:10
2

Uma solução alternativa, se você ainda não tiver ncurses instaladas e, portanto, 'claro'.
( nota adicionada - e como postou david postil, o seguinte somente funcionará se você estiver executando o cygwin da maneira antiga via cygwin.bat, ie cd \cygwin<ENTER> cygwin<ENTER> ) o arquivo cygwin.bat não lança o mintty, então está lançando da maneira antiga, e você pode fazer cmd /c cls .

    
por 01.07.2015 / 04:46
2

Isso limpa a tela e o buffer de rolagem de volta, ambos no mintty e no console:

echo -e "3c"
    
por 12.07.2015 / 19:08
0

Cygwin adicionou reset ao seu repertório de comandos por volta de dezembro de 2015. Foi quando o terminal do Cygwin não responder a 'reset' ou 'cls' foi arquivado. Ou talvez tenha começado a funcionar como esperado.

Se você não tiver redefinido, execute novamente o programa de instalação do pacote e atualize tudo.

    
por 23.06.2016 / 01:54