Tôi có một loạt các dòng mà tôi muốn viết ra một tệp khác.
Làm thế nào tôi có thể làm điều đó?
Tôi có một loạt các dòng mà tôi muốn viết ra một tệp khác.
Làm thế nào tôi có thể làm điều đó?
Câu trả lời:
Bạn có thể làm
:100,200w filename
Tất nhiên 100.200 là phạm vi các dòng bạn muốn viết.
Tổng quát nhất:
Di chuyển con trỏ đến dòng đầu tiên của nhóm bạn muốn viết. Lượt m
và a
tiếp theo. Đó là "đặt dấu tên là 'a'".
Di chuyển con trỏ đến dòng cuối cùng của nhóm, nhấn 'm' và 'b'. '
Thay đổi sang chế độ lệnh nhấn: như một chuỗi làm :'a,'b w
filename
sau đó nhấn return.
Điều đó sẽ làm việc trong vi, nvi và vim.
Một phương pháp khác, hoạt động trong vim hiện đại hơn:
Đặt con trỏ trên dòng đầu tiên của nhóm các dòng bạn muốn viết ra. Lượt V
, cho "bắt đầu khối trực quan của dòng".
Di chuyển con trỏ xuống dưới cùng của nhóm dòng. Vim sẽ nổi bật với video đảo ngược từng dòng.
Chép lại. Nhấn :
để đi vào chế độ dòng lệnh. Điều đó sẽ cung cấp cho bạn một dấu nhắc ở dưới cùng của scren trông giống như: :'<,'>
Điều đó có nghĩa là từ đầu khối hình ảnh đến cuối. Nhập w
và tên tệp và nhấn return.
Bạn có thể thêm các dòng đơn vào cuối tệp khi bạn cần bằng cách đặt con trỏ lên dòng bạn muốn viết ra sau đó gõ: :.w >> filename
và nhấn return.
Các lệnh "viết một nhóm các dòng" cũng hoạt động với ">> tên tệp" thay vì chỉ "tên tệp". ">>" khiến vi hoặc vim thêm vào tệp, thay vì chỉ viết nó.
Một mẹo nhỏ là sử dụng số dòng tương đối. Ví dụ :: + 0, + 99w tên tệp ghi 100 dòng tiếp theo vào tên tệp.