Chuyển đến nội dung chính

[command] VI trong linux


Trình soạn thảo vi

Nội dung : Giới thiệu trình soạn thảo vi , cung cấp một số kiến thức cơ sở để có
thể soạn thảo được văn bản hay chương trình .

I. Khởi động vi :

   1. Giới  thiệu  : Vi  (video  interactif)  là  chương  trình sọan  thảo văn bản  theo trang màn hình :

  - Màn hình được xem như một cửa sổ mở trên tập tin .

  - Có khả năng di chuyển con trỏ đến bất kì vị trí nào trên màn hình .

  - Cửa sổ có thể di chuyển tự do trên tập tin .

  Phần lớn các phím dùng độc lập hoặc kết hợp với phím Shift và Ctrl để
tạo ra các lệnh của vi . Khi một lệnh bị gõ sai , vi báo hiệu bằng cách nháy màn
hình , kêu còi hay thông báo lỗi .

  Chương trình vi được xây dựng từ chương trình soạn thảo dòng ex .Các
lệnh của ex có thể được gọi khi có dấu ":" ở dòng cuối màn hình .


2. Khởi động vi :

  Ta có thể gọi vi với tên tập tin văn bản :

      $vi  tên_tập tin

 Cửa sổ soạn  thảo sẽ được mở tại đầu tập  tin  . Nếu tập  tin chưa tồn tại  ,
nó sẽ được tạo bởi lệnh ghi  . Dòng cuối cùng  trên màn hình được dùng cho
những công việc sau :

  - Vào các lệnh .

  - Thống kê .

  - Báo lỗi .

  Khi ta chỉ muốn xem nội dung một tập tin đã có trên đĩa , dùng lệnh :

      $view tên_tập tin

  Để thóat trình xem , nhấn phím ESCgõ  :q!  nhấn phím Enter

  3.Thóat khỏi vi :

Muốn ra khỏi vi và ghi lại nội dung tập  tin  , bạn nhấn phím ESC và dùng

một trong các lệnh như sau :

  :ZZ  hoặc  :wq    hoặc  :x

Thoát khỏi vi và không ghi lại các thay đổi trước đó

  :q!

Khi ở trong chế độ soạn thảo của vi , muốn làm việc với các lệnh SHELL ,

ta có thể làm như sau :

- Chạy một lệnh SHELL

  :! Lệnh

- Hoặc gọi SHELL  , sau đó chạy các lệnh của người dùng  , khi kết  thúc

bấm Ctrl-D để trở lại vi :

  :! sh

  $ lệnh

  $ Ctrl-D

   II. Soạn thảo văn bản :

       1. Chèn văn bản :

- Chèn ký tự trên một dòng :

  a <text> <ESC>

- Chèn ký tự vào sau vị  trí con  trỏ  . Lệnh không được hiển  thị  trên màn hình .

Nhấn phím ESC để kết thúc chế độ chèn văn bản .

  i  <ESC>    Xen ký tự vào sau con trỏ .

  A <ESC>   Xen ký tự vào cuối dòng .

  i  <ESC>   Xen ký tự vào cuối dòng .

- Chèn dòng :

  o  <ESC>  Xen một dòng vào trước dòng chứa con trỏ .

  o  <ESC> Xen một dòng vào sau dòng chứa con trỏ .

        2. Di chuyển con trỏ trong tập tin :

- Theo ký tự :

Sang trái   : dùng phím trượt trái         hoặc   h   hoặc backspace

Xuống dòng  : dùng phím trượt xuống    hoặc   j    hoặc linefeed

Sang trái  : dùng phím trượt phải       hoặc   i    hoặc espace

Lên dòng  : dùng phím trượt lên         hoặc   k   hoặc  

- Theo dòng :

   ^ về đầu dòng

   $  cuối dòng

   Enter  đầu dòng kế tiếp

- Đầu dòng trên

  0(null) về đầu dòng vật lý (dòng bắt dầu bằng dấu cách hoặc Tab)

- Theo màn hình

  H về đầu màn hình   (Home)

  M về giữa màn hình  (Miđle)

  L về cuối màn hình  (Last)

- Theo từ (word) :

  w  W về đầu từ tiếp

  b  B  đầu từ hiện tại

  e  E  cuối từ hiện tại

- Theo câu :

  ( về đầu câu

  ) về cuối câu

Lưu ý kết thúc một câu là dấu .! hoặc ?

- Theo cửa sổ (window):

  z    dòng hiện tại ở giữa cửa sổ  .

  z<Enter>  dòng hiện tại ở đầu cửa sổ

  ^D    dòng hiện tại ở cuối cửa sổ

  ^U    xuống nữa cửa sổ

  ^F    xuống một cửa sổ (-2 dòng)

  ^B    lên một cửa sổ (-2 dòng)

Lưu ý :^là ký hiệu phím CTRL .

-Theo số thứ tự dòng :

  Để hiển thị  số thứ tự các dòng soạn thảo :

    : set nu

  Xóa bỏ hiển thị trên :

      : set nonu

  :n<Enter> hoặc nG Chuyển con trỏ đến dòng thứ n

  :s hoặc G  Đến cuối dòng văn bản

  :se list   hiển thị các kí tự ẩn

- Tìm theo dãy kí tự  :

  /  kí hiệu chiều tìn xuôi

  ?  kí hiêụ chiều tìm ngược

  /string  chuyển  con  trỏ đến dòng  chứa dãy  kí tự  theo  chiều xuôi

  ?string  chuyển  con  trỏ đến dòng  chứa dãy  kí tự  theo  chiêu ngược

  // lặp lại tìm xuôi

  ?? lặp lại tìm ngược

3. Xóa văn bản :

- Xóa kí tự :

  x   xóa kí tự taịo vị trí con trỏ

  3x  xóa 3 kí tự

  x  xóa kí tự trước vị trí con trỏ

- Xóa dòng văn bản :

  dd  hoặc  :d<CR> xóa dòng chứa con trỏ

  3dd  xóa 3 dòng bắt đầu từ vị trí văn bản

  d$  hoặc D  xóa đến cuối dòng

  dw  xóa từ chứa con trỏ

  3dw  xóa 3 từ

  d/string  xóa đến khi hết dãy kí tự

4. Thay thế văn bản :

-Thay thế kí tự :

  rc  thay thế kí tự đại diện bằng kí tự c

  R  <ESC>  thay thế số kí tự bằng dãy 'text"

- Thay thế dòng :

  S  <ESC>   xóa dòng hiện tại và thay thế nó bằng "text"

- Thay thế từ :

  cw <ESC>  thay thế một từ bằng "text" .

   Từ được thay thế tính từ vị trí  con trỏ đến kí tự $

  c2w<ESC>  thay 2 từ

  c hoặc c$  thay thế đến cuối dòng

  c/string  thay thế đến hết chuỗi

5. Xóa hoặc lặp lại tập lệnh :

- Xóa lệnh

  u  xóa tác dụng của lệnh cuối cùng

  U  xóa tất cả các thay đổi đã làm trên dòng hiện tại

- Lặp lại lệnh

  . lặp lại lệnh thay dổi văn bản

6. Xem trạng thái văn bản đang soạn thảo :

^G   Hiển thị tên , trạng thái ,số dòng , vị trí cursor và phần văn bản tính

từ vị trí con trỏ đến cuối dòng văn bản .

7. Sao chép , di chuyển văn bản :

+ Di chuyển văn bản

 Mỗi lần thực hiện một lệnh xóa (x hoặc d ) , vi đều ghi lại phần văn bản

bị xóa vào vùng đệm riêngcho đến lần xóa sau .  Lệnh p hoặc P cho phép lấy lại phần văn bản từ vùng đệm đó  .  Trước khi  thực hiện lệnh này  , dấu nháy phải được đặt vào vị trí cùng kiểu với phần văn bản có trong vùng đệm :

  -  kí tự

  -  từ

  -  dòng

  -  cuối dòng

p sao phần văn bản xóa lần cuối vào sau đối tượng cùng kiểu

P sao phần văn bản xóa lần cuối vào trước đối tượng cùng kiểu

* cách khác để chuyển dòng :

  :5, 10m  20  chuyển các dòng từ 5 đến 10 tới sau dòng 20

+ Sao chép văn bản

 Lệnh  y  (yank)  cho  phép  sao  chép  phần văn bản  ta muốn  vào  vùng
đệm . Muốn sao phần văn bản từ vùng đệm ra, ta phải chuyển cursor đến nơi
cần sao , sau đó dùng P hoặc p
  Y3w  sao 3 từ  vào vùng đệm

  Y hoặc yy  sao dòng hiện tại vào vùng đệm

  5yy  sao 5 dòng vào vùng đệm

Cách khác dùng để sao chép dòng :

  :5, 8 t 25  sao chép các dòng từ 5 tới 8 tới sau dòng 25

III . Dùng vi với danh sách các lệnh đã chạy của Shell :

Lệnh  fc  (fix   command  )  cho phép  ta  soạn  thảo bằng  vi  và  chạy lại  các

lệnh đã chạy của Shell .  Cách dùng như sau :

- Soạn thảo và cho chạy lệnh cuối cùng :

  $fc

- Soạn thảo một nhóm lệnh và cho chạy :

  $ fc  m  n

-Xem danh sách 16 lệnh cuối cùng :

  $ fc  -l  hoặc history

  $fc  -lr  ( danh sách theo thứ tự ngược lại )

- Tạo một tập tin chứa một số lệnh đã chạy (của history):

  $fc    -nl  n1    n2   > cmd

cmd  là một tập tin chứa các lệnh của history từ lệnh ngày đến lệnh

n2 .

Nhận xét

Bài đăng phổ biến từ blog này

Fake WiFi Access Point

Evil Twin Methodology Step 1 : We will first scan the air for a target access point. Then create an access point using airbase-ng with the same name and channel of the target access point, hence Evil- TWIN. Step 2 :The client is now disconnected repeatedly from the  original access point and as most modern system’s setting says… “Connect back to same ESSID(AP name) if disconnects”. This also happens because when the client disconnects from any access point it starts sending  probe requests  in the air with the name of the access point it connected to earlier. Hence  BSSID  isn’t a barrier, you just need  ESSID  to spoof the AP Step 3 : Clients is now connected to the Fake WiFi access point and now client may start browsing Internet. Step 4 : Client will see a web administrator warning saying “Enter WPA password to download and upgrade the router firmware” Step 5 : The moment client enters the password, s/he will be redirected to a loading page and the password will be stor

13 dấu hiệu lãng phí cuộc đời

Khi còn là 1 đứa trẻ, bạn luôn mong muốn khi lớn lên có thể trở thành phi hành gia, ca sĩ hay kĩ sư? Nếu đúng vậy thì bây giờ bạn đang làm gì? Hy vọng rằng mọi thứ diễn ra đúng như bạn mơ ước. Nhưng tiếc rằng, với hầu hết mọi người, câu trả lời là không. Dưới đây là 13 dấu hiệu cho thấy bạn đang lãng phí cuộc đời của mình. Sẽ rất khó để thừa nhận nhưng hãy thành thực với bản thân mình. 1. Bạn dành thời gian làm những điều mà mình không nên làm Chơi game. Xem các chương trình truyền hình thực tế. Lướt web. Ăn quá nhiều. Uống quá nhiều. Với mỗi người vấn đề lại khác nhau nhưng danh sách này còn kéo dài. Hãy nhìn nhận cuộc sống của mình 1 cách nghiêm túc hơn. Phần lớn thời gian bạn dành để làm gì? Nó có xứng đáng hay không? Nó có giúp mang tới cuộc sống tốt đẹp hơn hay không? Nó có làm nền tảng cho 1 tương lai tươi sáng hay không? Nếu câu trả lời là không thì bạn cần đánh giá lại những hoạt động hàng ngày của mình và thay đổi ngay. 2. Bạn phàn nàn quá nhiều Có những người t

How to Fix Windows Error 0x00000709

add a share printer error 0x00000709. Follow this step by step guide to learn how to fix this error: In this tutorial, we will teach you how to fix the Blue Screen of Death Stop Error 0x00000709. The error "0x00000709" occurs when you try to connect a shared printer over the network. The printer exists but you are unable to connect and you will get this error. Step 1 -- Open RUN type: \\192.168.1.111  Enter Step 2 -- Open the shared printer When the network path window opens up, double click on the printer. A pop-up window will appear and will show you the error: "Operation could not be completed error 0x00000709". Click on the Ok button and close all the windows. Step 3 -- Go to Devices & Printers Now let's resolve the error and properly add the shared printer. First of all, open the start menu and click on Devices and Printers. Step 4 -- Add a printer In the Devices and Printers window, click on the Add a Printer tab. Choose to add a lo