Como abrir dois arquivos diferentes usando o editor vi?


20

Eu tenho dois arquivos em locais diferentes e quero abrir esses dois arquivos com o mesmo vicomando. Como eu posso fazer isso?

  • Local do arquivo 1: /home/rs/rest.pl
  • Local do arquivo 2: /home/dev/grd.pl

4
Para quanto vale, existe um site beta apenas para Vi / Vim: vi.stackexchange.com
JPhi1618

Respostas:


25

Como observado por Zanna , use vários argumentos para o Vi. No entanto, Vi (m) por padrão não mostra os arquivos de uma só vez. Eles são carregados nos buffers e você pode alternar para os próximos (ou anteriores) buffers usando :bne :bp. Se você quiser ver os arquivos ao mesmo tempo, use janelas (divisões):

vim /some/file1 /some/file2 -o # horizontal split
vim /some/file1 /some/file2 -O # vertical split

Ou abas:

vim /some/file1 /some/file2 -p # Open up to 10 files in tabs

No entanto, os buffers são o que o Vim realmente usa para manipular arquivos, guias e janelas são apenas maneiras de organizá-los visualmente. Acostume-se a usar buffers diretamente, em vez de usar várias janelas ou guias.

(Essas opções também se aplicam ao Ubuntu vi, que é vim.tinypor padrão. vim-tinyÉ construído com +windows, portanto, guias e janelas são ativadas.)

Veja também:


12

Você pode chamar a chamada vi (ou vim) com vários argumentos

vi /home/rs/rest.pl /home/dev/grd.pl

Você está no primeiro arquivo, mas ambos estão abertos. Você pode alternar entre eles usando :n(próximo arquivo) e :N(último arquivo) (pressione escpara sair do modo de inserção, se necessário).

Percebo que esses arquivos estão nos diretórios pessoais de diferentes usuários; portanto, você pode não ter permissão como usuário normal. Para editar arquivos que seu usuário não possui permissões suficientes para editar, você precisará sudo. Você pode executar o comando sudoinicialmente ou usar um truque ao salvar o arquivo:w !sudo tee %


2
+1 para o :w !sudo tee %truque!
nalzok

1

Se você deseja visualizar os dois arquivos lado a lado na horizontal, use

vi -o /home/rs/rest.pl /home/dev/grd.pl

insira a descrição da imagem aqui

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.