Как открыть два разных файла с помощью редактора vi?

У меня есть два файла в разных местах, и я хочу открыть эти два файла с одинаковым vi команда. Как мне это сделать?

  • Расположение файла 1: /home/rs/rest.pl
  • Расположение файла 2: /home/dev/grd.pl

3 ответа

Решение

Как отмечает Занна, используйте несколько аргументов для Vi. Однако Vi(m) по умолчанию не показывает файлы сразу. Они загружаются в буферы, и вы можете переключиться на следующий (или предыдущий) буфер, используя :bn а также :bp, Если вы хотите увидеть файлы одновременно, используйте windows (разбивает):

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

Или вкладки:

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

Тем не менее, буферы - это то, что Vim на самом деле использует для манипулирования файлами, вкладки и окна - это просто способы их визуального размещения. Привыкайте использовать буферы напрямую, а не через несколько окон или вкладок.

(Эти параметры также применимы к Ubuntu vi, который vim.tiny по умолчанию. vim-tiny построен с +windows, поэтому вкладки и окна включены.)

Смотрите также:

Вы можете вызвать вызов vi (или vim) с несколькими аргументами.

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

Вы находитесь в первом файле, но оба открыты. Вы можете переключаться между ними, используя :n (следующий файл) и :N (последний файл) (нажмите esc, чтобы выйти из режима вставки при необходимости).

Я заметил, что эти файлы находятся в домашних каталогах разных пользователей, поэтому у вас могут не быть разрешения обычного пользователя. Чтобы редактировать файлы, для которых у вашего пользователя недостаточно прав для редактирования, вам потребуется sudo , Вы можете запустить команду с sudo изначально, или используйте трюк при сохранении файла :w !sudo tee %

Если вы хотите просмотреть два файла по горизонтали, используйте

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

Другие вопросы по тегам