Self-study in Linux

Bài 1: Mở đầu tìm hiểu về Vi (hay Vim)

Hiện tại tôi đang tìm hiểu và học cách dùng “vi editor” đây chắc hẳn là một loại text editor quen thuộc đối với những ai dùng Linux,  nhưng thực sự là khó khăn và khó sử dụng đối với những người mới làm quen như tôi. Do đó tôi lập nên Topic này để chúng ta cùng trao đổi kinh nghiệm học tập và thực thi “vi”, với mong muốn “vì một cộng đồng mở phát triển mạnh” tôi mong nhận được sự giúp đỡ từ các bạn.

Nếu bạn chưa biết về Vi, có thể tham khảo thông tin thêm tại đây, hoặc chờ các bài viết sau để làm rõ thêm.


Bài 2: Basic Editing
Để có thể dùng Vi như một trình text editor, bạn cần phải nắm rõ các lệnh cơ bản trước. Như có thể mở file, save file, insert, append, delete hay là quan trong hơn nữa là di chuyển con trỏ. Bài viết sau sẽ tập trung hướng dẫn các bạn cách làm quen với các lệnh cơ bản đó.
1. Đóng mở file và lưu file.
a. Mở file
Bạn có thể thực thi việc mở file cần dùng bằng cách gõ lệnh trong terminal.
$ vi [practice]
Trong đó practice là tên filename mà bạn muốn đặt, [practice] có nghĩa là bạn có thể đặt trên file trước hay sau khi edit đều được.
b. Đóng file
Giả sử bạn đã mở được file practice và thực thi, sau đó bạn muốn đóng file đó lại, chúng ta có các lệnh cơ bản sau để đóng lại.
:q!: Đóng lại chương trình vi và không sao lưu gì cả. Câu lệnh này còn có nghĩa “Quit and throw anything away!”
:q : Đóng và không save. Chú ý với câu lệnh này, nếu bạn mở file và edit file bằng vi thì khi dùng :q để thoát bạn sẽ thấy thông báo lỗi.
No write since last change (add ! to override)
Câu này có nghĩa là bạn đã thay đổi file, do đó cần phải thêm dấu “!” vào sau :q để thoát khỏi mà không phải lưu.
c. Lưu file
Sau khi thực thi với file practice và bạn muốn lưu file lại để có thể tiếp tục công việc sau này. Bạn sử dụng lệnh sau:
:w : Lưu file và không thoát khỏi vi
:wq : Lưu file và thoát khỏi vi
ZZ : Lưu file và thoát khỏi vi . Chúng ta sẽ phân biệt 2 câu lệnh :wq ZZ sau này.

- Vậy là các bạn có thể yên tâm cho việc đóng, mở file và sau lưu lại công việc của mình trên Vi.
2. Các lệnh edit cơ bản
Để có thể insert text vào trong chương trình vi bạn cần phải trong báo cho vi biết rằng bạn đang muốn insert text bằng lệnh i (insert).
Bạn có thể thực thi lệnh sau:
$ vi practice
i This is my first time to practice vi.
Khi đó bạn sẽ thấy trong phần text sẽ hiện ra câu “This is my first time to practice vi” mà không thấy i, vì i là câu command của chương trình do đó bạn không thể thấy được, nó chỉ thực thi như một yêu cầu gọi lệnh.
Để thoát khỏi command hiện tại, giả sử bạn đã insert xong, bạn muốn thoát khỏi lệnh i, bạn chỉ cần nhấn phím . Và bạn có thể sẽ nghe tiếng “bíp” thông báo thoát khỏi lệnh.
- Để có thể duy chuyển con trỏ bạn cần dùng các lệnh sau trên bằng phím. Với các kí tự.
h: Di chuyển con trỏ sang trái 1 khoảng trắng.
l : Di chuyển con trỏ sang phải 1 khoảng trắng.
k: Di chuyển con trỏ lên trên 1 hàng.
j: Di chuyển con trỏ phía dưới 1 hàng.
Để nhớ được cách duy chuyển con trỏ này, bạn có thể dùng một Note stick, để dán lên monitor của mình.
- Đồng thời chúng ta có thể di chuyển con trỏ bằng cách thêm tham số vào đầu các command, ví dụ, 3h sẽ di chuyển con trỏ sang trái 3 khoản trắng. 2k sẽ di chuyển con trỏ lên trên 2 hàng.
- Để di chuyển con trỏ lên đầu hàng, và cuối hàng ta dùng lệnh sau:
$: Di chuyển con trỏ đến cuối hàng.
0: Di chuyển con trỏ đến đầu hàng.
Xoá kí tự
- Để xóa một kí tự tại vị trí con trỏ ta dùng lệnh x, ta có thể dùng xxxxx như là việc xoá 5 kí tự từ vị trí con trỏ sang phải.
- Đồng thời ta có thể dùng lệnh d để xoá kí tự bằng cách kết hợp với cách di chuyển con trỏ, giả sử ta dùng lệnh dl nghĩa là delete right character. hoặc d4h nghĩa là delete kí tự thứ 4 bên trái. Bạn có thể thử bằng cách kết hợp các tham số vào lệnh d để thấy được rõ hơn ý nghĩa của nó.
Chèn một kí tự bên phải một word
Chắc bạn cũng nhận thấy rằng lệnh i chỉ cho phép bạn chèn tại vị trí con trỏ đang đứng, vậy nếu như bạn muốn chèn một kí tự ở bên phải của word, bạn có thể dùng lệnh a (append word)
Hãy thử bằng cách mở file practice và thực hành các lệnh đã học hôm nay. Bạn sẽ cảm thấy thoải mái hơn trong các bài viết sau.