Sử dụng trình soạn thảo vi / vim cơ bản Image Sử dụng trình soạn thảo vi / vim cơ bản

Trong hệ điều hành Linux có rất trình soạn thảo văn bản. Trong bài này sẽ hướng dẫn cách sử dụng trình soạn thảo vim trong Linux một cách cơ bản nhất, thích hợp cho người lần đầu làm quen.

1. Giới thiệu về trình soạn thảo “vi”/”vim”

Trình soạn thảo Vim trên CentOS

Chương trình cài đặt trên hệ thống của chúng ta là vim, viết tắt của Vi IMproved và được đặt tên là vi. Vi IMproved là một công cụ được cài đặt trên hầu như tất cả các bản phân phối Linux. Thật vậy, có thể có những lúc không có trình soạn thảo nào khác có sẵn trên hệ thống. Khi sử dụng trình soạn thảo vi, tất cả các lệnh được nhập thông qua bàn phím. Bạn không cần phải tiếp tục di chuyển tay để sử dụng một thiết bị con trỏ như di chuyển chuột.

2. Các chế độ (Mode) trong “vi”

Trong vi có 3 chế độ. Chế độ chúng ta đang ở sẽ không bị mất dấu. Nhiều tổ hợp phím và lệnh hoạt động khá khác nhau trong từng chề độ.

Chế độĐặc tính
Command
    Mặc định thì vi bắt đầu trong chế dộ lệnh.
    Mỗi khoá là một lệnh biên tập
    Bàn phím đuợc xem là các lệnh có thể sửa đổi nội dung tệp.
Insert
    Gõ i để chuyển sang chế độ Insert từ chế độ lệnh.
    Chế độ chèn được sử dụng để chèn văn bản vào một tệp.
    Chế độ chèn được chỉ báo bởi một "? INSERT ?" ở phía dưới màn hình.
    Nhấn Esc để thoát chế độ Insert và trở về chế độ Command.
Line
    Type : để chuyển chế độ Line từ chế độ Command. Mỗi khóa là một lệnh bên ngoài, bao gồm các thao tác như ghi nội dung tệp vào đĩa hoặc thoát.
    Sử dụng lệnh để chỉnh sửa dòng từ các trình soạn thảo dòng cũ hơn. Hầu hết các lệnh này thực sự không được sử dụng. Một số lệnh chỉnh sửa dòng rất mạnh mẽ.
    Nhấn Esc để thoát chế độ Line và trở về chế độ Command.

3. Cách sử dụng vị trí con trỏ trong “vi” một cách dễ dàng

Các phím sử dụng thay đổi vị trí con trỏ quan troọn trong trình soạn thảo vi.

PhímChức năng
4 dấu mũi trênĐể di chuyển lên, xuống, trái và phải
jĐể di chuyển xuống một dòng
kĐể di chuyển lên một dòng
h hoặc BackspaceĐể di chuyển con trỏ sang trái một ký tự
lDi chuyển con trỏ sang phải một ký tự
0Di chuyển con trỏ về vị trí đầu hàng
$Di chuyển con trỏ về vị trí cuối hàng
wĐặt vị trí con trỏ ở từ tiếp theo
bĐặt vị trí con trỏ ở từ trước
: 0 hoặc 1GĐể di chuyển đến đầu tập tin
: n hoặc nGĐể di chuyển đến dòng n
: $ hoặc GĐể di chuyển đến dòng cuối cùng trong tập tin
CTRL-F hoặc Page DownĐể di chuyển về phía trước một trang
CTRL-B hoặc Page UpĐể di chuyển lùi về một trang
^lĐể làm mới và màn hình trung tâm

4. Tìm kiếm trong “vi”

Trình soạn thảo vi có hai loại tìm kiếm: chuỗi và ký tự. Để tìm kiếm chuỗi, lệnh / và ? được sử dụng.

Lệnh /pattern tìm kiếm theo chiều thuận về phía trước trong một file.

Lệnh ?pattern tìm kiếm theo chiều ngược lại về phía sau trong một file.

Lệnh n và N lặp lại lệnh tìm trước theo cùng cách tìm hoặc theo hướng ngược lại.

5. Làm việc với văn bản trong “vi”

Tổ hợp phím quan trọng được sử dụng thay đổi, thêm và xóa văn bản trong vi.

PhímChức năng
aNối văn bản sau con trỏ; dừng lại khi dùng phím Escape
ANối văn bản ở cuối dòng hiện tại; dừng lại khi dùng phím Escape
iChèn văn bản trước con trỏ; dừng lại khi dùng phím Escape
IChèn văn bản ở đầu dòng hiện tại; dừng lại khi dùng phím Escape
oBắt đầu một dòng mới bên dưới dòng hiện tại, chèn văn bản ở đó; dừng lại khi dùng phím Escape
OBắt đầu một dòng mới trên dòng hiện tại, chèn văn bản ở đó; dừng lại khi dùng phím Escape
rThay thế kí tự ở vị trí hiện tại
RThay thế văn bản bắt đầu với vị trí hiện tại; dừng lại khi dùng phím Escape
xXóa ký tự ở vị trí hiện tại
NxXóa N ký tự, bắt đầu từ vị trí hiện tại
lXóa từ ở vị trí hiện tại
DXóa phần còn lại của dòng hiện tại
ddXóa dòng hiện tại
Ndd hoặc DNDXóa N dòng
uHoàn tác thao tác trước đó
yyYank (sao chép) dòng hiện tại và đặt nó vào bộ đệm
Nyy hoặc yNyYank (sao chép) N dòng và đặt nó vào bộ đệm
pDán tại vị trí hiện tại dòng từ bộ đệm.

6. Chạy lệnh bên ngoài trong “vi”

Dùng lệnh :sh để mở một command shell. Khi thoát khỏi shell, chúng ta sẽ tiếp tục phiên chỉnh sửa vi của mình.

Dùng lệnh :! thực hiện một lệnh từ bên trong vi. Lệnh tuân theo dấu chấm than. Lệnh này phù hợp cho các lệnh không tương tác, như :! wc% . Lệnh này sẽ chạy lệnh wc (đếm từ) trên tệp. % ký tự đại diện cho tập tin hiện đang được chỉnh sửa.

Chạy lệnh bên ngoài trong "vi"