Bagaimana Anda menghapus semua teks di atas baris tertentu


239

Bagaimana Anda menghapus semua teks di atas baris tertentu. Untuk penghapusan di bawah garis saya menggunakan "d shift g"

Jawaban:


493
dgg

akan menghapus semuanya dari baris Anda saat ini ke bagian atas file.

dadalah perintah penghapusan, dan ggmerupakan perintah gerakan yang mengatakan pergi ke bagian atas file, jadi ketika digunakan bersama-sama, itu berarti menghapus dari posisi saya saat ini ke bagian atas file.

Juga

dG

akan menghapus semua baris pada atau di bawah yang sekarang


25
Dan kdgg akan melakukan hal yang sama kecuali tidak menghapus baris yang dimaksud.
Rook

1
Apa sebenarnya arti dari ggafter delete?

3
gg adalah pintasan Vim - ": help gg" mengatakan: Goto line [count], baris pertama default, pada karakter non-blank pertama | linewise |. Jika startofline 'tidak disetel, simpan kolom yang sama.
Andy White

35
Bagi yang mencarinya, dGakan menghapus semua baris pada atau di bawah yang sekarang.
dimo414

1
@ dan3 Saya pikir arti "atas file" cukup jelas berdasarkan pertanyaan yang diajukan, tetapi Anda dapat mengedit jawaban saya jika Anda mau, atau Anda dapat membuat jawaban Anda sendiri menggunakan terminologi apa pun yang Anda inginkan.
Andy White

38

:1,.dmenghapus baris 1 ke arus.
:1,.-1dmenghapus baris 1 ke atas saat ini.

(Secara pribadi saya akan menggunakan dggatau kdggmenyukai jawaban lain, tetapi TMTOWTDI.)


27
Saya mencoba TMTOWTDItetapi sepertinya membiarkan saya dalam mode insert tanpa menghapus apa pun?
terlalu banyak php

12
TMTOWTDI bukan salah satu dari lebih dari satu cara untuk melakukannya.
Sarah

3
tmtowtdi Ada lebih dari satu cara untuk melakukannya (TMTOWTDI atau TIMTOWTDI, dilafalkan "Tim Toady") adalah moto Perl.
vaichidrewar

@toomuchphp Komentar itu fantastis. Tapi nama pengguna ... yang membuatnya sempurna. Memberi +1 kepada Anda.
Parthian Shot

38
kdgg

hapus semua baris di atas yang sekarang.


5
Ini agak membingungkan; sebenarnya menggerakkan kursor ke atas garis k, lalu menghapus garis saat ini dan dengan dgg.
dimo414

2
Dan gunakan 5kdgg untuk menghapus semua baris 5 baris di atas yang sekarang;)
Stefan van den Akker


6

Memberikan Anda tahu perintah vim ini:

1G -> go to first line in file
G -> go to last line in file

kemudian, berikut ini lebih masuk akal, lebih kesatuan dan lebih mudah diingat IMHO:

d1G -> delete starting from the line you are on, to the first line of file
dG -> delete starting from the line you are on, to the last line of file

Bersulang.

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.