Como obtenho o comando 'clear' no Cygwin?

198

Instalei o Cygwin, escolhendo um conjunto mínimo de pacotes.

Em um terminal, tentei fazer 'clear' para limpar o terminal, mas recebo

bash: clear: command not found

Como faço para que isso funcione?

MarnixKlooster ReinstateMonica
fonte
100
Você também pode digitar control-L.
Keith Thompson
1
Sim, mas (para mim) isso não funciona no set -o vimodo; ele faz o trabalho no set -o emacsmodo embora. Obrigado.
precisa saber antes de começar
1
No set -o vimodo, você pode digitar escape seguido de control-L ( ipara voltar ao modo de inserção). (Pessoalmente, eu gosto vi como editor, mas não como um modo de shell interativo.)
Keith Thompson
4
pressione ctrl + L para limpar
KOTIOS
2
Observe que o ncursespacote (como indicado na resposta aceita) também inclui outros comandos úteis relacionados ao terminal, como tput, portanto, pode valer a pena instalar dependendo de suas necessidades.
Donald Burr

Respostas:

242

Instale o pacote Cygwin ncurses; está na categoria Utils.

MarnixKlooster ReinstateMonica
fonte
2
Este pacote não parece estar na versão atual do cygwin de 64 bits.
Andrew Prock 23/09
6
@AndrewProck Parece estar lá agora!
Rohaq
Obrigado por isso! Se você já instalou o cygwin você pode instalar o ncurses, seguindo a seção "Instalar ncurses" aqui: java.ociweb.com/mark/programming/tmuxInCygwin.html
jbisa
Se você não encontrar ncourses, espelho alteração no início da instalação, ou utilize a caixa de pesquisa
albertoiNET
125

Isso deve fazer:

alias clear='printf "\033c"'
Krishna Murthy
fonte
2
Ótima resposta. Nas versões mais antigas do Cygwin, cmd /c clscostumava funcionar como descrito em stackoverflow.com/q/15598245/1207769 . Mas essa solução parou de funcionar, enquanto isso printfainda funciona até o momento da redação.
ctrueden
1
Excelente - ainda funciona a partir de setembro de 2014. Apenas para uma nota de clareza adicional, você pode adicioná-lo ao seu arquivo ./bashrc (basta copiar e passar da linha) que você encontrará em / home / [nome de usuário] e o tornará permanente.
Sam Redway
Isso também funciona um encanto para Gow bash, mas msysgit tem seu próprio programa claro no diretório bin
icc97
1
Essa é a melhor resposta para limpar a rolagem e a tela atual. Ncurses não limpa a rolagem para mim.
blockloop
Ótima resposta ... Você pode usá-lo mesmo em servidores de produção onde você não tem permissão para instalar pacotes (eu sei ... Cygwin em servidores Windows de produção .. não é a minha escolha xd). Você só precisa adicioná-lo ao seu ~/.bashrcarquivo e sourcepronto ... Bom trabalho, apontando isso
Luke Savefrogs 07/02
35

basta usar este atalho: Alt+F8e Ctrl-Lpara pular a página

Abudayah
fonte
4
Não é isso que o usuário solicitou; às vezes, limpar a tela é realmente útil para garantir rapidamente que a saída obtida é de onde você pensa que é.
precisa saber é
1
Mas não há resposta para a pergunta, se você colocar todas as informações úteis relacionadas a cada post de estouro de pilha, isso seria monstruoso.
DrCord
3
Uma pesquisa no Google por "tela limpa cygwin" me trouxe aqui, esta resposta foi correta para mim. Você pode ser rigoroso quanto quiser sobre respostas, escopo, limites e outros enfeites - mas, no que me diz respeito, isso resolveu o problema para mim e obteve uma votação positiva como realmente "útil".
Bing
E assim começou a batalha: os puristas e os anti-puristas bombardeando de lados opostos da divisão filosófica. Se um combatente era morto, ele era jogado no abismo e, ao cair, os dois lados cobriram os ouvidos para evitar ouvir os gritos dos paradoxos.
Stabledog
14

Use o cygcheckcomando para verificar em qual pacote ele está (adicionando .exeà sua string cmd, neste exemplo clear.exe:)

> cygcheck -p 'clear.exe'
Found 4 matches for clear.exe
ncurses-debuginfo-5.9-20150307-1 - ncurses-debuginfo: Debug info for ncurses (installed binaries and support files)
ncurses-debuginfo-5.9-20150404-1 - ncurses-debuginfo: Debug info for ncurses (installed binaries and support files)
ncurses-5.9-20150307-1 - ncurses: Terminal display utilities (installed binaries and support files)
ncurses-5.9-20150404-1 - ncurses: Terminal display utilities (installed binaries and support files)

e você sabe que precisa instalar o ncursespacote usando o instalador do cygwin.

Kossak
fonte
13

É bom ter o clear.exeprograma para arquivos de script bash, então:

Detalhe do Windows Cygwin para clear.execomando do programa.

  1. Faça o download do Cygwin setupx86.exeou o que quer que seja chamado em http://cygwin.com/

  2. Execute-o e faça o download da internet. * Se você possui uma conexão proxy, pode ser necessário usar as configurações do Internet Explorer ou configurar o proxy personalizado.

  3. Escolha todas as configurações padrão e termine a instalação.

  4. Execute o instalador uma segunda vez e faça o download novamente da Internet, mas desta vez você Utilsacessará a árvore de arquivos para personalizar sua instalação.

  5. Expanda Utilse desça até os ncurses"arquivos". Lá, você clicará no skipitem, à esquerda dos utilitários ncurses (existem alguns).

  6. Depois de mudar skippara a versão que ncursesvocê deseja instalar, continue a instalação e termine.

  7. Execute o instalador novamente e desta vez você expandirá as Libbibliotecas aka.

  8. Encontre o instalador da biblioteca terminfo e altere novamente skip para a versão mais recente, continue e conclua a instalação.

NOTA Você pode ter que sair do Windows e fazer login novamente ou apenas reiniciar antes que os novos programas entrem em vigor. Isso ocorre devido à possibilidade da sessão em segundo plano do Cygwin.

NOTA Você também deve fazer as três instalações separadas.

Jared French
fonte
@ Chris: Estou perguntando isso apenas por uma questão de clareza. Por que a biblioteca de banco de dados terminfo é necessária aqui? O comando clear funcionou bem para mim. Eu li sobre o terminfo (como link fornecido ), mas quero saber se há algo específico que ele faz aqui?
Starney
11

Clique com o botão direito do mouse> Redefinir ... (Alt + F8) funcionou para mim ... (no Cygwin-x86-2.830)

SxOne
fonte
1
+1 Ctrl+ Le o clearcomando ncurses mantêm a rolagem, enquanto isso a limpa.
Zantier
10

Eu tentei no meu sistema: Funciona:

Just use: cntrl+l

Espero que esta ajuda!

Anshu Kumar
fonte
7

Abra o Windows Explorer e navegue até:

[Diretório de instalação do Cygwin] \ home \ [Usuário] \

e.g.: C:\cygwin\home\wreckseal

em seguida, abra o arquivo .bashrccom o Notepad ++.

Mova o cursor no final da última linha, pressione a Entertecla Enter e adicione o texto abaixo.

alias cls = 'eco -e "\ 033c"'

ou o texto abaixo:

alias cls = 'printf "\ 033c"'

Reinicie o cygwin, digite cls. Feito!

Observe que não há barra de rolagem depois de enviar o comando cls. Eu prefiro a printfversão do que a echoversão. Tente você mesmo!

naufrágio
fonte
6

Abordagem geral para esses problemas:
Pesquise na página de pesquisa do pacote Cygwin com o nome completo do executável.

Agora a pesquisa de pacotes pode ser feita de várias maneiras:

E todas essas 4 partidas são agora dos ncursespacotes. (Ou seja, 2 versões de depuração e 2 estáveis.

(Dica profissional: clique com o botão direito do mouse no campo de pesquisa e crie um mecanismo de pesquisa personalizado. Configurei o atalho cppara "pacote cygwin" no Firefox e no Chrome.)

StackzOfZtuff
fonte
2

Acabei de me deparar com este projeto e, até agora, acho incrível

https://github.com/transcode-open/apt-cyg

depois de instalá-lo, você pode executar

apt-cyg install ncurses

Pessoalmente, prefiro instalar bibliotecas usando essa ferramenta em vez da ferramenta Cygwin, pois todas as versões do Cygwin têm .exe anexadas a elas e podem ser complicadas ao copiar e colar comandos do Linux (fora do SO, por exemplo).

Bradley Bossard
fonte