Guia Introdutório do Linux VI

Continuamos nossa série de artigos para iniciantes em Linux. Seguiremos com o uso de comandos. Desta vez veremos como conectar e expandir comandos, como enviar comandos para o background (também veremos o que é isso, se você ainda não souber) e como usar expressões aritméticas.

[ Hits: 41.263 ]

Por: Cicero Juliao da Silva Junior em 10/08/2007


Conectando comandos



Uma característica poderosa da shell é a capacidade de redirecionar a saída e entrada de dados de um comando para outros comandos ou arquivos. Para permitir que comandos sejam 'enviados' para outros comandos, a shell usa os metacaracteres.

Falamos sobre eles no artigo anterior desta série. Qualquer coisa, dê uma olhada no Guia Introdutório V. Como dito anteriormente, um metacaracter é um caracter digitado normalmente, mas que possui significado especial para a shell.

Conectando comandos

O metacaracter pipe (|) conecta a saída de um comando para a entrada de outro. Isto permite que você tenha um comando trabalhando com dados e então tenha outro comando trabalhando com os resultados desta atividade. Veja um exemplo de uma linha de comando usando pipe:

$ cat /home/usuário/livros | sort | less

Este comando lista o conteúdo do arquivo '/home/usuário/livros' e conecta/envia sua saída para o comando 'sort'. O comando sort toma a lista de livros deste arquivo e analisa cada linha, passando a organizar alfabeticamente pelo início de cada linha. Então tal saída é conectada/enviada para o comando 'less' (como já vimos em artigos anteriores, permite lermos o resultado uma página por vez).

Comandos em seqüência

Algumas vezes você vai desejar que uma seqüência de comandos sejam executados, um por vez, numa determinada ordem. Pode-se fazer isso por digitar os diversos comandos na mesma linha e separando-os por ponto e vírgula (;). Veja um exemplo:

$ date ; ls -sh | less

No exemplo acima, primeiro é impresso na tela a data (date), depois é listado o conteúdo do diretório atual, juntamente com o tamanho de cada item (-sh), e a saída de tal listagem é enviada para o comando 'less', para ser vista uma página por vez.

Comandos no background

Alguns comandos podem demorar para realizar a tarefa que você pediu. Nestes casos você possivelmente não vai querer ficar sentado em frente ao computador, esperando. Então podemos ter nossos comandos rodando no 'background', rodando 'por trás', sem vermos seus efeitos diretamente na tela. Fazemos isso por usar o símbolo '&'.

Comandos para formatar texto são exemplos comuns dos casos onde você vai querer rodar em background. Também é possível criar scripts, algo como mini-programas para rodar em background e checar continuamente certos eventos, como se o HD está lotado, ou se um usuário em particular está logado.

Eis um exemplo de execução de uma linha de comando em background:

$ latex principal.tex &

Explicando a linha acima: latex é uma linguagem poderosa para editoração; 'principal.tex' é o arquivo usado no exemplo para gerar um longo livro de centenas e centenas de páginas, tomando certo tempo, dependendo da configuração da máquina. No fim da sentença, '&' é usado para indicar que a linha de comando deve ser executada em background. Pronto! Após clicar ENTER, o prompt já estará disponível para você novamente, enquanto a linha de comando está sendo executado no background.

    Próxima página

Páginas do artigo
   1. Conectando comandos
   2. Usando expressões aritméticas
   3. Alterando seu shell
Outros artigos deste autor

SpiderOak - Armazenamento Grátis

GRIP - Conversão e ripagem de CDs em Linux

Guia Introdutório do Linux

Explorando a máquina sem abrí-la

SystemRescueCd - Corrigindo o sistema e recuperando dados

Leitura recomendada

Instalei o Ubuntu! E agora?

Kernel 4.0 no Debian, Linux Mint e Ubuntu - Atualização rápida

Atualização do ZappWM 4.0 Beta (Window Manager)

Skype: Restringindo acesso não autorizado usando firewall Linux

Virtualização com CentOS e VMware Server

  
Comentários
[1] Comentário enviado por juninho (RH.com) em 10/08/2007 - 09:03h

Tenho acompanhado este seu trabalho de ajudar novos usuários, e tenho adorado, principalmente pela forma que explica, faz parecer mais simples ainda.

Continue escrevendo, está perfeito.

Parabéns.

[2] Comentário enviado por coffnix em 10/08/2007 - 10:35h

Parabéns pelos excelentes artigos! abração

[3] Comentário enviado por weslleyalves em 10/08/2007 - 19:28h

Parabéns, sempre que o curso aperta lah escola a gente recorre aos seus artigos. ;)

[4] Comentário enviado por fcamara em 02/06/2009 - 15:41h

Editor VI - Guia de Referência
Aurélio Marinho Jargas (http://aurelio.net)


Entrar e Sair

vi arquivo.txt <ENTER>
:q <ENTER>
Entrar, Inserir Texto, Salvar e Sair

vi arquivo.txt <ENTER>
i
Minha primeira frase no VI.
<ESC>
:wq <ENTER>
Entrar, Alterar Texto e Sair sem Salvar

vi arquivo.txt <ENTER>
dd
:q! <ENTER>
Entrar, Alterar Texto, Salvar em Outro Arquivo e Sair

vi arquivo.txt <ENTER>
yy
p
:w arquivo-novo.txt <ENTER>
:q <ENTER>
Configurar o VI

vi ~/.vimrc <ENTER>
i
set vb ru nu <ENTER>
set ic is hls scs
<ESC>
:wq <ENTER>
Repetir a Primeira Linha 2 Vezes e Apagar a Última

vi arquivo.txt <ENTER>
gg
yy
p
p
G
dd
Repetir Comandos

vi arquivo.txt <ENTER>
A
FIM
<ESC>
j
.
j
.
Abrir Dois Arquivos Simultaneamente

vi arquivo.txt <ENTER>
:split ~/.vimrc <ENTER>
Ctrl+W
Ctrl+W
:q <ENTER>
:q <ENTER>
Obter Ajuda

vi arquivo.txt <ENTER>
:help <ENTER>


Comandos de Arquivo
:q Sai do VI
:w Salva alteraçoes feitas
:wq Salva aterações e sai do VI
:q! Sai sem salvar
:w abc Grava arquivo com o nome 'abc'
:r abc Insere o conteúdo do arquivo 'abc'
:e abc Edita o arquivo 'abc'
Modo de Inserção
i Entra no modo de Inserção
a Entra no modo de Inserção, após o cursor
o Entra no modo de Inserção, em uma nova linha
<ESC> Sai do modo de Inserção
Copiar, Cortar e Colar
yy Copia a linha inteira
5yy Copia as 5 próximas linhas
dd Apaga a linha
5dd Apaga 5 linhas
x Apaga uma letra
5x Apaga 5 letras
p Cola o trecho copiado ou apagado
V Seleção visual de linhas
Pulos
gg Pula para a primeira linha
G Pula para a última linha
44G Pula para a linha número 44
w Pula para a próxima palavra
b Pula para a palavra anterior
{ Pula para o parágrafo anterior
} Pula para o próximo parágrafo
( Pula para a frase anterior
) Pula para a próxima frase
f. Pula até o próximo ponto (.), na mesma linha
`` Desfaz o pulo, volta
Apagando com esperteza
dgg Apaga até o início do arquivo
d0 Apaga até o início da linha atual
dw Apaga a palavra
d4b Apaga as quatro palavras anteriores
df. Apaga até o próximo ponto
d) Apaga até o fim da frase
Outros
J Junta a próxima linha com a atual
u Desfaz o último comando
Ctrl+R Refaz o último comando desfeito
. Repete o comando anterior
hjkl Movimenta o cursor
/ Pesquisa um texto
n Vai para o próximo resultado da pesquisa
:%s/a/b/g Troca 'a' por 'b' em todo o texto
:!cmd Executa o comando externo 'cmd'
:r!cmd Insere o resultado do comando externo 'cmd'





Mais informações em http://aurelio.net/doc/vim

[5] Comentário enviado por doradu em 03/02/2010 - 17:16h

lembrou-me os tempos do DOS


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor HostGator.
Linux banner
Linux banner
Linux banner

Artigos

Dicas

Viva o Android

Tópicos

Top 10 do mês

Scripts