歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux教程 >> 利用vi與Unix系統進行對話

利用vi與Unix系統進行對話

日期:2017/2/28 16:48:30   编辑:Linux教程

  Unix工程師在平時工作時,需要通過各種手段跟Unix系統進行交流、進行對話。如在系統防火牆管理中,工程師必須把自己的想法,如允許哪些數據包通過,哪些數據包過濾掉等等,告訴給Unix操作系統。而無疑vi程序就是這麼一個工具。它能夠為工程師與Unix操作系統之間建立一座溝通的橋梁。

  Vi是英文visual的縮寫,是Unix操作系統下最受歡迎的全屏幕編輯程序。它的功能十分豐富,想通過一篇文章的篇幅介紹其全部的功能,有點不現實。為此在這裡,筆者從如何提高vi程序利用率與開發速度的角度,談談vi工具的實用技巧以及需要注意的地方。

  一、vi編輯程序在工作緩沖區中完成全部工作。

  Vi編輯程序有一個特點,她的工作全部是在緩沖區中完成的。工程師在編輯對話開始之前,vi編輯程序會從硬盤中將用戶編輯的文件讀入工作緩沖區內。在工程師進行編輯的過程中,全部在緩沖區內完成,直到把工作緩沖區的內容寫回到硬盤中。工程師在編輯新文件時,vi編輯程序也並不立即在硬盤中建立文件,而是先把內容保存在緩沖區內。然後需要管理員通過w命令把文件保存到硬盤中。

  這種機制,即有好處,也有壞處。由於系統從緩沖區讀取數據要比在硬盤中讀取數據快的多。故利用vi來編輯程序會有效率會比較高。但是緩沖區的內容由於沒有及時保存在硬盤上,所以如果Unix服務器突然斷電的話,緩沖區中的內容將會全部丟失。從而帶來一些不必要的損失。所以筆者建議,在利用vi編輯程序編寫大型程序的時候需要特別注意,要及時利用w命令來保存緩沖區中的內容。不過需要說明的是,vi編輯程序畢竟不是一個文本編輯軟件。若利用這個工具來建立復雜的文件,不是明智的做法。

  二、選擇正確的模式來操作。

  Vi編輯程序有三種操作模式,分別為命令模式、輸入模式和底行命令模式。

  在命令模式下工程師輸入的內容被翻譯成命令傳遞給vi編輯程序。如“a”命令就是其中比較有代表的一個。命令模式下工程師鍵入的所有字符都不會在屏幕上顯示出來;工程師也不用按回車鍵來執行命令。Vi編輯程序下的命令通常情況下都是單個字符,他們往往是英文操作名稱的首字符。如上面提到的英文字母“a”就表示插入字符等等。

  在輸入模式下,工程師才能夠對文件進行編輯。通常情況下,工程師剛進入vi編輯程序時是處於命令模式下。此時工程師是無法對文件進行編輯的。在輸入模式下,vi編輯程序就好象是一個類似於打字機軟件。工程師在此鍵入的內容,都將作為文本來接受並顯示給管理員。完成輸入或者編輯文本工作後,按Esc鍵返回到命令模式中。

  當工程師編輯好文本內容後,需要用冒號開始的命令把vi的光標移動到屏幕的底行。此時vi編輯程序進入到底行命令模式。工程師往往需要把冒號跟其他命令結合使用,如“:w”表示保存緩沖區中的文件。在底行命令模式下,主要用來執行一些特別的功能。如可以在不退出vi編輯環境的情況下實現替換文本、執行shell命令等功能。

  由於不同的模式完成不同的工作,故工程師需要了解這三種模式的不同特點,然後根據實際情況選擇合適的操作模式。具體來說,筆者有如下建議。如果只是查看文件或者說還不確定該如何修改時,最好在命令模式下查看文件。因為在命令模式下是只讀的,可以避免對原有文件的誤操作。同時,文件編寫完成之後,要及時轉換到底行模式下,並利用w等命令把修改後的文件及時保存到硬盤中。可見合適的模式有利於提高工程師的工作效率,同時又可以避免誤操作對原有文件的不利影響。

Copyright © Linux教程網 All Rights Reserved