Comment ouvrir deux fichiers différents à l'aide de l'éditeur vi?

20

J'ai deux fichiers dans des emplacements différents et je souhaite ouvrir ces deux fichiers avec la même vicommande. Comment puis-je le faire?

  • Emplacement du fichier 1: /home/rs/rest.pl
  • Emplacement du fichier 2: /home/dev/grd.pl
sablonneux
la source
4
Pour ce que ça vaut, il y a un site bêta juste pour Vi / Vim: vi.stackexchange.com
JPhi1618

Réponses:

25

Comme l'a noté Zanna , utilisez plusieurs arguments pour Vi. Cependant, Vi (m) par défaut n'affiche pas les fichiers à la fois. Ils sont chargés dans des tampons et vous pouvez passer aux tampons suivants (ou précédents) à l'aide de :bnet :bp. Si vous voulez voir les fichiers en même temps, utilisez des fenêtres (fractionnements):

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

Ou onglets:

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

Cependant, les tampons sont ce que Vim utilise réellement pour manipuler les fichiers, les onglets et les fenêtres ne sont que des moyens de les organiser visuellement. Habituez-vous à utiliser des tampons directement, plutôt que via plusieurs fenêtres ou onglets.

(Ces options s'appliquent également à Ubuntu vi, qui est vim.tinypar défaut. vim-tinyEst construit avec +windows, donc les onglets et les fenêtres sont activés.)

Voir également:

muru
la source
12

Vous pouvez appeler call vi (ou vim) avec plusieurs arguments

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

Vous êtes dans le premier fichier, mais les deux sont ouverts. Vous pouvez basculer entre eux en utilisant :n(fichier suivant) et :N(dernier fichier) (appuyez sur escpour sortir du mode d'insertion si nécessaire).

Je remarque que ces fichiers se trouvent dans les répertoires personnels de différents utilisateurs, vous ne pouvez donc pas avoir l'autorisation en tant qu'utilisateur normal. Pour modifier des fichiers que votre utilisateur ne dispose pas des autorisations suffisantes pour modifier, vous aurez besoin sudo. Vous pouvez exécuter la commande avec sudoinitialement, ou utiliser une astuce lors de l'enregistrement du fichier:w !sudo tee %

Zanna
la source
2
+1 pour l' :w !sudo tee %astuce!
nalzok
1

Si vous souhaitez afficher les deux fichiers en mosaïque horizontalement, utilisez

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

entrez la description de l'image ici

Sam Yam
la source