• Nenhum resultado encontrado

Edição de arquivos com o VI

No documento LinuxSystemAdministration COMPLETA (páginas 77-84)

Ao iniciar o vi, ele se encontra no modo de navegação, modo utilizado para se

percorrer o texto e fornecer comandos de navegação ao longo do texto.

Teclas de Navegação Tecla Descrição

O, $ Vai para o início da linha / vai para o final da linha.

1G, G Vai para o início do documento / vai para o final do documento.

(, ) Vai para o início da sentença / vai para o final de sentença.

w, W Pula uma palavra / pula uma palavra incluindo a pontuação.

h, j, k, l Simula as teclas direcionais para Esquerda, Baixo, Cima, Direita respectivamente.

/, ? Busca termos na direção Cima para Baixo / busca de Baixo para Cima. i Aciona o modo de inserção.

a, A Aciona modo de inserção após o cursor / aciona modo de inserção no final da linha.

o, O Aciona modo de inserção no início da próxima linha / aciona modo de inserção no início da mesma

linha.

s, S Apaga um caractere e entra no modo de inserção / apaga a linha e entra no modo de inserção.

c Modifica um item com a inserção de texto.

r Substitui um único caractere (pressionar sobre o caractere e digitar o outro).

x Apaga um caractere único (semelhante a tecla del em editores gráficos).

dd Apaga uma linha.

y, yy Copia um caractere / copia uma linha.

p, P Cola o conteúdo copiado após do cursor / cola o conteúdo copiado antes do cursor. u Desfaz a última ação.

ZZ Fecha e salva o documento.

ZQ Fecha o documento sem salvar.

O modo de inserção é normalmente habilitado ao se pressionar a tecla i, A ou

INSERT servindo para editar o texto. A tecla ESC é usada para sair deste modo e

Carro carro1 = new Carro(); carro1.ano = "2001"; carro1.modelo= "fusca"; carro1.cor = "prata";

Figura 2.4 – Layout Memória após inicialização

//criando novo alias

Carro carro2 = carro1;

Figura 2.5 – Layout Memória duas variáveis referência para o mesmo objeto

2.3 Membros de Instância

Cada objeto criado deverá ter sua própria instância de variáveis (atributos) definidas pela classe. Os métodos definem o comportamento de um objeto. Isto é importante, pois denota que um método pertence a cada objeto da classe. Porém não devemos confundir isto com a implementação do método, que é compartilhada por todas as instâncias da classe.

2.3.1 Invocação de Métodos

Objetos se comunicam pela troca de mensagens, isto significa que um objeto pode ter que mostrar um comportamento particular invocando uma operação apropriada que foi definida no objeto. Em Java, isto é feito pela

chamada de um método em um objeto usando o operador binário "." (ponto),

devendo especificar a mensagem completa: o objeto que é o recebedor da mensagem, o método a ser invocado e os argumentos para o método (se houver).

Os valores das variáveis em um objeto constituem

o seu estado. Dois objetos distintos têm

o mesmo estado se suas variáveis membro têm os

mesmos valores.

O modo de comando é acionado ao se teclar : no modo de navegação e serve

para efetuar buscas, gravar, sair, executar comandos no shell, alterar configurações do

vi, etc.

carro1.modelo= "fusca"; carro1.cor = "prata";

Figura 2.4 – Layout Memória após inicialização

//criando novo alias

Carro carro2 = carro1;

Figura 2.5 – Layout Memória duas variáveis referência para o mesmo objeto

2.3 Membros de Instância

Cada objeto criado deverá ter sua própria instância de variáveis (atributos) definidas pela classe. Os métodos definem o comportamento de um objeto. Isto é importante, pois denota que um método pertence a cada objeto da classe. Porém não devemos confundir isto com a implementação do método, que é compartilhada por todas as instâncias da classe.

2.3.1 Invocação de Métodos

Objetos se comunicam pela troca de mensagens, isto significa que um objeto pode ter que mostrar um comportamento particular invocando uma operação apropriada que foi definida no objeto. Em Java, isto é feito pela

chamada de um método em um objeto usando o operador binário "." (ponto),

devendo especificar a mensagem completa: o objeto que é o recebedor da mensagem, o método a ser invocado e os argumentos para o método (se houver).

Os valores das variáveis em um objeto constituem

o seu estado. Dois objetos distintos têm

o mesmo estado se suas variáveis membro têm os

mesmos valores. Comandos básicos do vi

Comando Descrição

:! Permite a execução de comando no shell (deve-se informar o comando após a !).

:q ou :quit Sai do arquivo (caso não haja alteração) e fecha o editor.

:q! ou :quit! Sai do arquivo sem salvar e fecha o editor.

:w, :w! Salva as alterações feitas no arquivo / salva as alterações de forma forçada.

:wq Salva o arquivo e sai do editor.

:x ou :e ou :exit Fecha o arquivo, salva se necessário e sai do editor.

:e! Fecha o arquivo, salva de forma forçada e sai do editor. :visual Volta para o modo navegação.

Há ainda uma versão melhorada do vi chamada vim (Vi Improved). Ele é

uma versão mais poderosa e maior em termos de espaço em disco e

requisitos de memória do editor de texto vi.

Essa versão é mantida como software livre, com algumas cláusulas restritivas,

e acompanha a maioria das distribuições Linux da atualidade. Está disponível

também para variantes do UNIX, para Windows, Macintosh e outros sistemas

operacionais.

D I C A

Fique atento às teclas do quadro Teclas de Navegação, pois elas são o diferencial em questões que envolvem o editor de texto vi. Então treine e memorize todas as opções desse quadro.

Carro carro1 = new Carro(); carro1.ano = "2001"; carro1.modelo= "fusca"; carro1.cor = "prata";

Figura 2.4 – Layout Memória após inicialização

//criando novo alias

Carro carro2 = carro1;

Figura 2.5 – Layout Memória duas variáveis referência para o mesmo objeto

2.3 Membros de Instância

Cada objeto criado deverá ter sua própria instância de variáveis (atributos) definidas pela classe. Os métodos definem o comportamento de um objeto. Isto é importante, pois denota que um método pertence a cada objeto da classe. Porém não devemos confundir isto com a implementação do método, que é compartilhada por todas as instâncias da classe.

2.3.1 Invocação de Métodos

Objetos se comunicam pela troca de mensagens, isto significa que um objeto pode ter que mostrar um comportamento particular invocando uma operação apropriada que foi definida no objeto. Em Java, isto é feito pela

chamada de um método em um objeto usando o operador binário "." (ponto),

devendo especificar a mensagem completa: o objeto que é o recebedor da mensagem, o método a ser invocado e os argumentos para o método (se houver).

Os valores das variáveis em um objeto constituem

o seu estado. Dois objetos distintos têm

o mesmo estado se suas variáveis membro têm os

mesmos valores.

7.1. L

ABORATÓRIO

Esse laboratório tem o objetivo de testar os comandos do editor de textos vi.

1) Edite um novo arquivo linustorvalds.txt com o texto abaixo, depois salve

o conteúdo sem sair do vi.

vi linustorvalds.txt

(…) Linus Torvalds pertence a comunidade dos Finlandssvensk, um extrato da populacao representando 6% dos habitantes da Finlandia, que falam sueco. Ele estudou na Universidade de Helsinki. Vive atualmente em Santa Clara, na California, com a sua mulher Tove e suas tres filhas. Atualmente trabalha na Open Source Development Labs (OSDL). (...)

Wikipedia

(http://pt.wikipedia.org/wiki/Linus_Torvalds)

:w

2) Agora vá para o início do documento e apague as reticências cercadas pelos

parêntesis. É preciso estar em modo de navegação.

1G 4x

3) Vá até o final do texto e apague a última linha.

G

dd

4) Localize, na mesma ordem, as palavras linus, Helsinki, California e

extrato.

?Linus /Helsinki /California ?extrato

5) No de edição de próxima linha, digite a linha abaixo novamente e volte

para o modo de navegação/comando.

o

digitacao da linha abaixo [ESC]

7) Modifique somente o caractere 6 (de 6%) da terceira linha para 2 e saia do

editor de texto salvando.

r2 :wq

8) Entre novamente no arquivo, copie a última linha, cole-a novamente antes

da primeira linha e saia do arquivo salvando.

vi linustorvalds.txt G

Carro carro1 = new Carro(); carro1.ano = "2001"; carro1.modelo= "fusca"; carro1.cor = "prata";

Figura 2.4 – Layout Memória após inicialização

//criando novo alias

Carro carro2 = carro1;

Figura 2.5 – Layout Memória duas variáveis referência para o mesmo objeto

2.3 Membros de Instância

Cada objeto criado deverá ter sua própria instância de variáveis (atributos) definidas pela classe. Os métodos definem o comportamento de um objeto. Isto é importante, pois denota que um método pertence a cada objeto da classe. Porém não devemos confundir isto com a implementação do método, que é compartilhada por todas as instâncias da classe.

2.3.1 Invocação de Métodos

Objetos se comunicam pela troca de mensagens, isto significa que um objeto pode ter que mostrar um comportamento particular invocando uma operação apropriada que foi definida no objeto. Em Java, isto é feito pela

chamada de um método em um objeto usando o operador binário "." (ponto),

devendo especificar a mensagem completa: o objeto que é o recebedor da mensagem, o método a ser invocado e os argumentos para o método (se houver).

Os valores das variáveis em um objeto constituem

o seu estado. Dois objetos distintos têm

o mesmo estado se suas variáveis membro têm os mesmos valores. yy 1G P ZZ

carro1.modelo= "fusca"; carro1.cor = "prata";

Figura 2.4 – Layout Memória após inicialização

//criando novo alias

Carro carro2 = carro1;

Figura 2.5 – Layout Memória duas variáveis referência para o mesmo objeto

2.3 Membros de Instância

Cada objeto criado deverá ter sua própria instância de variáveis (atributos) definidas pela classe. Os métodos definem o comportamento de um objeto. Isto é importante, pois denota que um método pertence a cada objeto da classe. Porém não devemos confundir isto com a implementação do método, que é compartilhada por todas as instâncias da classe.

2.3.1 Invocação de Métodos

Objetos se comunicam pela troca de mensagens, isto significa que um objeto pode ter que mostrar um comportamento particular invocando uma operação apropriada que foi definida no objeto. Em Java, isto é feito pela

chamada de um método em um objeto usando o operador binário "." (ponto),

devendo especificar a mensagem completa: o objeto que é o recebedor da mensagem, o método a ser invocado e os argumentos para o método (se houver).

Os valores das variáveis em um objeto constituem

o seu estado. Dois objetos distintos têm

o mesmo estado se suas variáveis membro têm os

mesmos valores.

7.2. E

XERCÍCIOS

• O vi possui três modos de funcionamento. Quais são eles e quais são suas

diferenças?

• Quais outros comandos têm o mesmo efeito que :x?

• Em que situação é preciso fazer uma gravação forçada do texto? Qual o

símbolo que normalmente é usado para salvar forçado?

Carro carro1 = new Carro(); carro1.ano = "2001"; carro1.modelo= "fusca"; carro1.cor = "prata";

Figura 2.4 – Layout Memória após inicialização

//criando novo alias

Carro carro2 = carro1;

Figura 2.5 – Layout Memória duas variáveis referência para o mesmo objeto

2.3 Membros de Instância

Cada objeto criado deverá ter sua própria instância de variáveis (atributos) definidas pela classe. Os métodos definem o comportamento de um objeto. Isto é importante, pois denota que um método pertence a cada objeto da classe. Porém não devemos confundir isto com a implementação do método, que é compartilhada por todas as instâncias da classe.

2.3.1 Invocação de Métodos

Objetos se comunicam pela troca de mensagens, isto significa que um objeto pode ter que mostrar um comportamento particular invocando uma operação apropriada que foi definida no objeto. Em Java, isto é feito pela

chamada de um método em um objeto usando o operador binário "." (ponto),

devendo especificar a mensagem completa: o objeto que é o recebedor da mensagem, o método a ser invocado e os argumentos para o método (se houver).

Os valores das variáveis em um objeto constituem

o seu estado. Dois objetos distintos têm

o mesmo estado se suas variáveis membro têm os

mesmos valores.

No documento LinuxSystemAdministration COMPLETA (páginas 77-84)

Documentos relacionados