Arquivo

Textos com Etiquetas ‘Linux’

Tabela de atalhos no bash

24 de abril de 2011

Quase toda a vez que eu tenho que executar vários comandos bash, acabo usando em demasia as teclas de seta para percorrer o que foi digitado ou colado no terminal.

A navegação e edição na linha de comando dessa maneira fica na verdade um saco. Os atalhos de navegação no bash facilitam muito o trabalho nesse caso.

Estou publicando uma tabela de atalhos básicos para eu mesmo usar como referência. Espero que também seja útil para você que ainda não domina todos os atalhos do bash e sofre na hora de mover o cursor no terminal.

Tabela de atalhos básicos no bash

Navegação Ctrl + A Move o cursor para o começo da linha.
Ctrl + E
Move o cursor para o final da linha.
Ctrl + B
Move o cursor um caracter para trás.
Alt + B Move o cursor uma palavra para trás.
Ctrl + F Move o cursor um caracter para frente.
Alt + F Move o cursor uma palavra para frente.
Ctrl + X + X Move o cursor para o começo ou final da linha.
Ctrl + ] x Onde x é qualquer caracter, move o cursor para frente até a próxima ocorrência de x.
Alt + Ctrl + ] x Onde x é qualquer caracter, move o cursor para trás até a próxima ocorrência de x.
Edição Ctrl + U Apaga a partir do cursor até o começo da linha.
Ctrl + K Apaga a partir do cursor até o final da linha.
Ctrl + W Apaga a primeira palavra que está antes do cursor.
Alt + D Apaga a primeira palavra que está depois do cursor.
Ctrl + Y Cola o último texto apagado.
Alt + Y Navega pelos últimos textos apagados (use depois de Ctrl + Y).
Alt + U Coloca em letras maiúsculas a palavra atual a partir do cursor.
Alt + L Coloca em letras minúsculas a palavra atual a partir do cursor.
Alt + C Coloca em letras minúsculas a palavra atual a partir do cursor, deixando a primeira letra em maiúscula (capitalize).
Ctrl + T Troca de posição as duas últimas letras antes ou entre o cursor.
Alt + T Troca de posição as duas últimas palavras antes ou entre o cursor.
Completar Tab
Alt + /
Auto completa uma palavra.
Tab + Tab
Alt + ?
Exibe as possibilidades de auto completar de uma palavra.
Alt + * Insere as possibilidades de auto completar de uma palavra.
Desfazer Ctrl + X
Ctrl + U
Ctrl + _
Desfaz a última modificação.
Alt + R Desfaz todas as modificações na linha.
Ctrl + L Limpa a tela deixando a linha atual no topo da tela.
Ctrl + C Ignora a linha atual e abre uma nova linha vazia.
Histórico Ctrl + R Busca reversa incremental no histórico de comandos executados.
Alt + P Busca reversa não incremental no histórico de comandos executados.
Ctrl + P Navega no histórico para trás (o mesmo que seta para cima).
Ctrl + N Navega no histórico para frente (o mesmo que seta para baixo).
Alt + . Recupera a última palavra do comando anterior.
Execução !! Executa o último comando.
!abc Executa o último comando que comece com abc.
!abc:p Imprime o último comando que comece com abc.
!n Executa o número de comandos n que estão no histórico.
!$ Último argumento do último comando.
!^ Primeiro argumento do último comando.
^abc^xyz Substitui a primeira ocorrência de abc por xyz no último comando e o executa.

Referência: http://www.ice2o.com/bash.ph

Algumas dicas

No Mac OS X, para utilizar os comandos com Alt através da tecla Option é necessário habilitar isso antes.

  • Terminal: abra a janela Preferences, vá em Settings, clique em Keyboard e marque a opção “Use option as meta key”.
  • iTerm2: abra a janela Preferences, vá em Profiles, clique em Keys e escolha a opção “+Esc” em “Left option (Option Key) key acts as”.
    Atualização em 29/04/2011: conforme dica de Lucas Catón.

No Ubuntu, se o menu na barra superior do terminal estíver visível, em todo atalho que comece com Alt deve ser utilizado Shift + Alt, pois o Alt irá acionar os atalhos do menu. Por exemplo, para mover o cursor uma palavra para trás, use Shift + Alt + B ao invés de Alt + B.

Para exibir a documentação completa de atalhos do bash, utilize o comando a seguir no terminal:
man 1 bash
/^READLINE

Unix , , , , , , , , ,

Melhores posts do ano de 2009

8 de janeiro de 2010

Dica para instalar Webrat no Mac OS X e no Ubuntu

30 de agosto de 2009

Tanto no Mac OS X como Ubuntu pode haver dependências para instalar o Webrat. Abaixo segue a solução dos problemas que tive na hora da instalação.

.
Mac OS X

Antes de instalar o Webrat você precisa instalar o pacote Xcode Tools que vem com o DVD de instalação do Mac OS X. Esse pacote você encontra na pasta Optional Installs / Xcode Tools do DVD. Ele é necessário, pois arquivos de cabeçalho do Ruby (header files) não são instalados por padrão no Mac OS X.

Se você tentar instalar o Webrat sem esse arquivos, vai obter a seguinte mensagem de erro:

Building native extensions.  This could take a while…
ERROR:  Error installing webrat:
ERROR: Failed to build gem native extension.

/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/bin/ruby extconf.rb
can’t find header files for ruby.

Gem files will remain installed in /Library/Ruby/Gems/1.8/gems/nokogiri-1.3.3 for inspection.
Results logged to /Library/Ruby/Gems/1.8/gems/nokogiri-1.3.3/ext/nokogiri/gem_make.out

.
Após a instalação do Xcode Tools, instale o Webrat via terminal:

$ sudo gem install webrat

E se tudo ocorrer bem, você terá uma mensagem semelhante a essa:

Building native extensions.  This could take a while…
Successfully installed nokogiri-1.3.3
Successfully installed webrat-0.5.3
2 gems installed
Installing ri documentation for nokogiri-1.3.3…
Installing ri documentation for webrat-0.5.3…
Installing RDoc documentation for nokogiri-1.3.3…
Installing RDoc documentation for webrat-0.5.3…

.
A versão utilizada do Mac OS X foi a 10.5.7.
.
Atualização em 20/09/2009: Conforme o comentário do Mauricio, quando rodamos o Cucumber, aparece a seguinte mensagem:

HI. You’re using libxml2 version 2.6.16 which is over 4 years old and has
plenty of bugs. We suggest that for maximum HTML/XML parsing pleasure, you
upgrade your version of libxml2 and re-install nokogiri. If you like using
libxml2 version 2.6.16, but don’t like this warning, please define the constant
I_KNOW_I_AM_USING_AN_OLD_AND_BUGGY_VERSION_OF_LIBXML2 before requring nokogiri.

A solução para isso é atualizar o libxml2 e reinstalar o nokogiri. Siga os passos abaixo.

Atualize o libxml2 através do MacPorts:
$ sudo port install libxml2

Desinsta-le o nokogiri:
$ sudo gem uninstall nokogiri

Instale novamento o nokogiri para utilizar a nova versão do libxml2:
$ sudo gem install nokogiri

.
Ubuntu

Há duas bibliotecas que precisam ser instaladas antes do Webrat: libxmllibxslt. Para instalá-las, vá no terminal:

$ sudo apt-get install libxml2-dev

$ sudo apt-get install libxslt1-dev

Caso você tente instalar o Webrat sem ter essas bibliotecas, obterá o seguinte erro:

Building native extensions. This could take a while…
ERROR: Error installing webrat:
ERROR: Failed to build gem native extension.

/usr/bin/ruby1.8 extconf.rb
checking for iconv.h in /opt/local/include/,/opt/local/include/libxml2,/opt/local/include,/opt/local/include,/opt/local/include/libxml2, /usr/local/include,/usr/local/include/libxml2,/usr/include,/usr/include/libxml2,/usr/include,/usr/include/libxml2… yes
checking for libxml/parser.h in /opt/local/include/,/opt/local/include/libxml2,/opt/local/include,/opt/local/include,/opt/local/include/libxml2, /usr/local/include,/usr/local/include/libxml2,/usr/include,/usr/include/libxml2,/usr/include,/usr/include/libxml2… no
libxml2 is missing. try ‘port install libxml2′ or ‘yum install libxml2-devel’
*** extconf.rb failed ***
Could not create Makefile due to some reason, probably lack of
necessary libraries and/or headers. Check the mkmf.log file for more
details. You may need configuration options.

Provided configuration options:
–with-opt-dir
–without-opt-dir
–with-opt-include
–without-opt-include=${opt-dir}/include
–with-opt-lib
–without-opt-lib=${opt-dir}/lib
–with-make-prog
–without-make-prog
–srcdir=.
–curdir
–ruby=/usr/bin/ruby1.8
–with-iconv-dir
–without-iconv-dir
–with-iconv-include
–without-iconv-include=${iconv-dir}/include
–with-iconv-lib
–without-iconv-lib=${iconv-dir}/lib
–with-xml2-dir
–without-xml2-dir
–with-xml2-include
–without-xml2-include=${xml2-dir}/include
–with-xml2-lib
–without-xml2-lib=${xml2-dir}/lib
–with-xslt-dir
–without-xslt-dir
–with-xslt-include
–without-xslt-include=${xslt-dir}/include
–with-xslt-lib
–without-xslt-lib=${xslt-dir}/lib

Gem files will remain installed in /usr/lib/ruby/gems/1.8/gems/nokogiri-1.3.3 for inspection.
Results logged to /usr/lib/ruby/gems/1.8/gems/nokogiri-1.3.3/ext/nokogiri/gem_make.out

.
Depois de instalar as bibliotecas, você pode instalar o Webrat no terminal:

$ sudo gem install webrat

E terá a mensagem de instalação com sucesso semelhante a essa:

Building native extensions. This could take a while…
Successfully installed nokogiri-1.3.3
Successfully installed webrat-0.5.3
2 gems installed
Installing ri documentation for nokogiri-1.3.3…
Installing ri documentation for webrat-0.5.3…
Installing RDoc documentation for nokogiri-1.3.3…
Installing RDoc documentation for webrat-0.5.3…

.
A versão utilizada do Ubuntu foi a 9.04.

Ruby, Unix , , , , ,

Configurando teclado em inglês no Ubuntu (e com cedilha)

14 de agosto de 2009

Estou rodando uma imagem do Ubuntu 8.10, com GNOME 2.24.1, em uma VMware Player 2.5.2 no Windows XP, utilizando um teclado Genius (ximbica por sinal) padrão ABNT2.

Atualização em 29/08/2009: esses passos de configuração também funcionam com o Ubuntu 9.04.

A configuração de teclado dessa imagem estava com o layout ABNT2. Eu particularmente não gosto desse layout, prefiro utilizar o layout inglês internacional, até mesmo se eu estiver usando um teclado no padrão ABNT2. Sempre usei esse layout de teclado para escrever código e não pretendo trocar por nada.

A primeira coisa que eu fiz foi adicionar o novo layout. Para isso, no menu da barra superior do Ubuntu, fui em System, Preferences, Keyboard. Na janela Keyboard Preferences, na aba Layouts, cliquei no botão em frente a Keyboard model, que estava com Brazilian ABNT 2. Na janela Choose a keyboard model, escolhi Generic na lista Vendors, Generic 105-key (Intl) PC, na lista Models e depois clique no botão OK. Voltando para a janela Keyboard Preferences, cliquei no botão “+” (ou Add…) que fica logo abaixo de Selected layouts e na janela Choose a Layout, na aba By country, escolhi United States na lista Country, USA International (with dead keys) na lista Variants e pressionei o botão Add. Novamente na janela Keyboard Preferences, na lista Selected layouts, escolhi USA International (with dead keys) como padrão. Depois disso cliquei no botão Close.

Em princípio era isso, então abri o gedit para testar. Estava tudo certo, com exceção da cedilha, que exibia um “c” com acento. Isso mesmo uma letra c com um acento agudo em cima.

Pesquisei, pesquisei, testei, pesquisei e descobri que uma alternativa era usar “ALT+,”. Hum… meio tosco.
Pesquisei, pesquisei, testei, pesquisei, testei, pesquisei, testei e consegui configurar a cedilha.

A solução foi editar o arquivo /usr/lib/gtk-2.0/2.10.0/immodule-files.d/libgtk2.0-0.immodules.

No terminal, usei o seguinte comando para editá-lo usando o Vim:

$ sudo vi /usr/lib/gtk-2.0/2.10.0/immodule-files.d/libgtk2.0-0.immodules.

E então editei a linha 6:
“cedilla” “Cedilla” “gtk20″ “/usr/share/locale” “az:ca:co:fr:gv:oc:pt:sq:tr:wa”

Acrescentando “en:”:
“cedilla” “Cedilla” “gtk20″ “/usr/share/locale” “az:ca:co:en:fr:gv:oc:pt:sq:tr:wa”

Ressaltando que para alterar esse arquivo eu precisei abrí-lo no VIM como sudo.

Fechei e abri de novo o gedit e a cedilha estava funcionando. No terminal não rolou, continuou aparecendo “c” com acento. Pelo menos por enquanto vou continuar utilizando o “ALT+,” quando tiver que usar cedilha no terminal.

Coloquei aqui todos os passos que fiz em detalhes, pois penei um pouco para descobrir como solucionar o problema e em várias soluções que encontrei, dependendo da versão do Ubuntu, os passos não são exatamente esses ou o arquivo para editar não é o mesmo. E é claro, eu espero que você não passe por isso se tiver o mesmo problema.

Referências:
http://www.vivaolinux.com.br/dica/Configurando-teclado-com-layout-americano-para-funcionar-simbolos-do-alfabeto-brasileiro/
http://www.danilocesar.com/blog/2007/05/19/cedilha-no-ubuntu-em-ingles/

Unix , , , ,

Curso de GNU/Linux Iniciante na Anhanguera Educacional de Jundiaí

18 de julho de 2009

Nos dias 6, 8, 13, 14 e 15 de julho participei do Curso GNU/Linux Iniciante que foi realizado na Anhanguera Educacional de Jundiaí.

Quem ministrou o curso foi Marcos Grillo, que decidiu estender a carga horária inicial de 16 horas para 18 horas, para ser possível dar um conteúdo adicional ao que foi planejado inicialmente.

Abaixo segue alguns dos assuntos abordados:

  • Partições;
  • Instalação de uma máquina virtual Linux no Windows com VMware;
  • Comandos shell básicos como pwd, cd, ls, grep, cat, touch, chmod, chown, ifconfig, service, route, su;
  • Utilização do Vim;
  • Utilização do usuário root (sudo);
  • Configuração de rede;
  • Criação de usuários e grupos;
  • Compactação e descompactação de arquivos;
  • Gerenciador de pacotes (RPM);
  • Configuração e utilização do Samba;
  • Introdução ao Nagios (por Paulo Roberto Alves Resende Jr.);
  • Permissões de arquivos e pastas;
  • Servidor FTP;
  • Servidor HTTP.

O curso, que contou com a presença de 22 alunos, foi muito bom. A maior do tempo das aulas foi utilizado com exercícios práticos. Além disso, o investimento foi baixo: 2 parcelas de R$ 35,10.

Alunos do Curso GNU/Linux Iniciante na Anhanguera Jundiaí. À direira, Marcos Grillo.

Alunos do Curso GNU/Linux Iniciante. À direira, Marcos Grillo.

O pessoal do curso até fez um blog, os Discípulos do Pinguim.

Fazer esse curso de Linux foi mais uma das minhas iniciativas de me desvincular um pouco do mundo Windows.

Você pode baixar as apresentações, apostilas e outros materiais adicionais do curso nesse link.

Unix , , , , , , , ,

10º Fórum Internacional de Software Livre - fisl10

14 de junho de 2009

No final desse mês estarei no fisl10, o 10º Fórum Internacional de Software Livre. O evento será realizado entre os dias 24 a 27 de junho, em Porto Alegre.

O fisl é o maior evento de software livre da América Latina e até a publicação desse post já possui mais de 5.500 inscrições. A Associação SoftwareLivre.org (ASL), que organiza o evento, espera atingir a marca de 8 mil participantes.

Entre os assuntos que serão abordados, estão:

  • Linux, Ubuntu, KDE, BSD
  • Desenvolvimento em Ruby, Java, PHP, Python, Perl e Smalltalk
  • Desenvolvimento de jogos
  • MySQL, PostgreSQL
  • Robótica
  • Segurança
  • Software livre e negócios

Palestrantes como Richard Matthew Stallma, fundador do Movimento Software Livre, do Projeto GNU e da Free Software Fundation (FSF); Peter Sunde, um dos fundadores do site The Pirate Bay; e John “Maddog” Hall, fundador da Linux Internacional são destaques do evento.

A lista completa dos palestrantes, a programação completa, inscrições e outras informações, você encontra no site do fisl10.

Eventos , , , , , , , , , , , , ,