Używam vina Ubuntu 12.10. Niektóre pliki są dość długie, więc kiedy chcę przejść do środka pliku, muszę przewinąć stronę w dół lub przewinąć w dół.
Czy istnieje skrót do VIM, aby przejść do dokładnego numeru linii?
Używam vina Ubuntu 12.10. Niektóre pliki są dość długie, więc kiedy chcę przejść do środka pliku, muszę przewinąć stronę w dół lub przewinąć w dół.
Czy istnieje skrót do VIM, aby przejść do dokładnego numeru linii?
Odpowiedzi:
:150
przeniesie Cię do linii 150 w vi
:1500
przeniesie Cię do linii 1500 w vi
Zgodnie z komentarzami, które możesz chcieć spróbować
150G
aby dostać się do linii 150. co oznacza mniej naciśnięć klawiszy, to :150Enter jeśli nie jesteś pewien, na której linii się znajdujesz, spróbuj
:set nu!
zwróć uwagę na:
jeśli chcesz zawsze widzieć linię, rozważ edycję swojego profilu vima. Najczęściej
vi ~/.vimrc
i dodaj
:set nu!
pisać i kończyć
:wq
#or you could use :x
można to zrobić poza vi. Na przykład, jeśli chcę usunąć wiersz 5000 w pliku tekstowym, mógłbym użyć języka skryptowego. Na przykład przy użyciu seda wyglądałoby to następująco
sed -i '5000d;' inputFile.txt
byłoby to usunięcie linii od 10 do 20
sed -i '10,20d;' inputFile.txt
zauważ, że -i będzie edytować plik w miejscu. Bez opcji -i nastąpi wyjście na standardowe wyjście. Spróbuj. możesz przekierować standardowe wyjście do pliku
sed '5001,$d;' inputFile.txt >> appenedFile.txt
może się tu dużo dziać. spowoduje to usunięcie linii 5001 do $. Z $ będącym końcem pliku. >> zostanie dołączony do pliku. gdzie as> tworzy nowy plik.
jeśli jesteś ciekawy, ile linii znajduje się w pliku, możesz chcieć wpisać wc -l inputFile.txt
niektóre z nich mogą wydawać się okropnie trywialne, ale jeśli próbujesz edytować plik zawierający 50 000 linii, otwarcie i przeglądanie go może zająć vi słodką minutę. gdzie jeśli wiesz, że chcesz tylko usunąć ostatnią linię, możesz użyć seda i zrobić to w ułamku czasu.
sed może również wyszukiwać i zamieniać w pliku. Ale być może awk, perl lub python również mogą być dobrym rozwiązaniem.
ale ogólnie rzecz biorąc, możesz chcieć znaleźć dobry tutorial na vi. istnieją tysiące. Skonsultowałbym się z Google. Być może znajdź sobie VIM Cheatsheat.
150Gdziała tak samo jak :150. Nie jest szybsze, ale może być łatwiejsze do zapamiętania.
<CR>pod uwagę.
Inne wskazówki VIM: w trybie poleceń
poświęć kilka minut i zacznij czytać ten dokument. Na dłuższą metę wynagradza Cię za efektywność edycji, zwłaszcza pliku konfiguracyjnego.
Z otwartego terminala, w powłoce bash, po prostu edytuj plik, uruchamiając:
$ vi +N yourfile
Gdzie Njest numer linii.
Do przeglądania ( morelub less;):
$ less +N yourfile
$ more +N yourfile
Znak +oznacza polecenie uruchomienia przy starcie . Więc jeśli komenda jest tylko numer, a następnie vi, lessi more, będzie to jak skacze do linii numer .
Ale możesz również użyć /regexdo znalezienia pierwszego wystąpienia określonego ciągu lub wyrażenia regularnego:
$ less +/Error logfile
$ less -i +/error logfile # -i Causes less's searches to ignore case
$ vi +/open.*myfile myprog...
Kolejna rada: skoro nie masz doświadczenia z vimem, bieganie vimtutormoże być bardzo pomocne.