我有两个文件位于不同的位置,我想用相同的vi
命令打开这两个文件。我该怎么做?
- 文件 1 位置:
/home/rs/rest.pl
- 文件 2 位置:
/home/dev/grd.pl
答案1
正如 Zanna 所指出的,使用 Vi 的多个参数。但是,默认情况下,Vi(m) 不会一次显示文件。它们被加载到缓冲区中,您可以使用切换到下一个(或上一个)缓冲区:bn
和:bp
。如果要同时查看文件,请使用窗口(分割):
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
,因此选项卡和窗口均已启用。)
也可以看看:
答案2
你可以使用多个参数调用 vi (或 vim)
vi /home/rs/rest.pl /home/dev/grd.pl
您位于第一个文件中,但两个文件都已打开。您可以使用:n
(下一个文件)和:N
(最后一个文件)在它们之间切换(esc必要时按 退出插入模式)。
我注意到这些文件位于不同用户的主目录中,因此您可能没有普通用户的权限。要编辑您的用户没有足够权限编辑的文件,您将需要sudo
。您可以先使用以下命令运行命令sudo
,或者在保存文件时使用技巧:w !sudo tee %