Mam dwa pliki w różnych lokalizacjach i chcę otworzyć te dwa pliki za pomocą tego samego vi
polecenia. Jak mogę to zrobić?
- Lokalizacja pliku 1:
/home/rs/rest.pl
- Lokalizacja pliku 2:
/home/dev/grd.pl
Mam dwa pliki w różnych lokalizacjach i chcę otworzyć te dwa pliki za pomocą tego samego vi
polecenia. Jak mogę to zrobić?
/home/rs/rest.pl
/home/dev/grd.pl
Odpowiedzi:
Jak zauważyła Zanna , użyj wielu argumentów do Vi. Jednak Vi (m) domyślnie nie pokazuje plików jednocześnie. Są ładowane do buforów i możesz przełączać się do następnych (lub poprzednich) buforów za pomocą :bn
i :bp
. Jeśli chcesz zobaczyć pliki w tym samym czasie, użyj systemu Windows (dzieli):
vim /some/file1 /some/file2 -o # horizontal split
vim /some/file1 /some/file2 -O # vertical split
Lub zakładki:
vim /some/file1 /some/file2 -p # Open up to 10 files in tabs
Jednak bufory są tym, czego Vim używa do manipulowania plikami, kartami i oknami, są jedynie sposobami wizualnego ich rozmieszczenia. Przyzwyczaj się do używania buforów bezpośrednio, zamiast przez wiele okien lub kart.
(Te opcje dotyczą także systemu Ubuntu vi
, który jest vim.tiny
domyślnie. vim-tiny
Jest wbudowany +windows
, więc karty i okna są włączone).
Zobacz też:
Możesz wywołać call vi (lub vim) z wieloma argumentami
vi /home/rs/rest.pl /home/dev/grd.pl
Jesteś w pierwszym pliku, ale oba są otwarte. Możesz przełączać się między nimi za pomocą :n
(następnego pliku) i :N
(ostatniego pliku) (naciśnij, escaby w razie potrzeby wyjść z trybu wstawiania).
Zauważyłem, że pliki te znajdują się w katalogach domowych różnych użytkowników, więc możesz nie mieć uprawnień jako zwykły użytkownik. Aby edytować pliki, których użytkownik nie ma wystarczających uprawnień do edycji, będziesz potrzebować sudo
. Możesz uruchomić polecenie za pomocą sudo
początkowo lub użyć sztuczki podczas zapisywania pliku:w !sudo tee %
:w !sudo tee %
lewę!