Saturday, February 18, 2012

Ninja

Como ser um "ninja" da linha de comandos? Abaixo alguns comandos simples que podem ajudar MUITO e facilitar trabalho, provavelmente só serão úteis para quem realmente passa muito tempo na linha de comandos e é "preguiçoso", ponho preguiçoso porque sempre se pode escrever tudo outra vez ou usar outras formas de atingir alguns dos objectivos abaixo mas há vezes em que estes atalhos não se resumem a simples questões de comodidade, às vezes tornam-se mesmo funcionais estes atalhos. Há alguns deles com os quais já não passo, e que já usei tantas vezes que me saem mecanicamente.

Tab - quase todos ou mesmo todos devem saber que o tab autocompleta os comandos, caminhos ou ficheiros na linha de comandos, certo? Por exemplo para chamar o comando iptables, basta escrever ipta e que o sistema se encarrega de completar o resto da palavra... se existirem outros comandos que comecem por ipta, o sistema indicará todas as possibilidades.

Abaixo mais alguns atalhos que encontrei noutras páginas.

CTRL-A  Mover o cursor para o início da linha.
CTRL-E Mover o cursor para o fim da linha.

CTRL-U Apagar desde o cursor até ao começo da linha.
CTRL-K Apagar desde o cursor até ao final da linha.
CTRL-W Apagar desde o cursor até ao início da palavra.
CTRL-Y Cola texto copiado.
CTRL-L Faz um clear do ecrã, deixando a linha actual no topo do mesmo.
!!  Executa o útimo comando na história
!hhas Executa o último comando na história que comece por hhas.
!n Executa o n-ésimo comando na história
^hjk^mpf  Apaga a primeira ocorrência de hjk e substitui-a por mpf no último comando e executa-o


Exemplo desta última:

[root@dns1 ~]# ls -lah /home/
total 8.0K
drwxr-xr-x.  2 root root 4.0K Sep 23 13:50 .
dr-xr-xr-x. 22 root root 4.0K Feb 18 10:50 ..
[root@dns1 ~]# ^home^root
ls -lah /root/
total 52K
dr-xr-x---.  2 root root 4.0K Feb 17 15:18 .
dr-xr-xr-x. 22 root root 4.0K Feb 18 10:50 ..
-rw-------.  1 root root 1.1K Feb 17 15:11 anaconda-ks.cfg
-rw-------.  1 root root 1.1K Feb 18 20:33 .bash_history
-rw-r--r--.  1 root root   18 May 20  2009 .bash_logout
-rw-r--r--.  1 root root  176 May 20  2009 .bash_profile
-rw-r--r--.  1 root root  176 Sep 23  2004 .bashrc
-rw-r--r--.  1 root root  100 Sep 23  2004 .cshrc
-rw-r--r--.  1 root root  11K Feb 17 15:11 install.log
-rw-r--r--.  1 root root 3.8K Feb 17 15:10 install.log.syslog
-rw-r--r--.  1 root root  129 Dec  3  2004 .tcshrc
[root@dns1 ~]#
[root@dns1 ~]#

História... história... o que é isso? História é uma lista limitada dos últimos N  (o buffer é configurável) comandos executados na consola actual, para um utilizador específico. Basta executar o history na linha de comandos para termos acesso a essa lista.

No comments:

Post a Comment