vim編輯器

                                                                       vi:Visueral Interface 文本編輯器

 文本編輯種類

行編輯器:sed

全屏編輯器:nano,vi

VIM -Vi IMprowed

使用

 vim:模式化的編輯

 基本模式:

編輯模式:命令模式

 輸入模式:

末行模式:

內置的命令行接口

打開文件:

# vim [OPTION]…. FILE…..

 +#:打開文件后,直接讓光標處于第#行的行首

vim的編輯命令:

 字符編輯

x: 刪除光標處的字符;

#x: 刪除光標處起始的#個字符;

 xp: 交換光標所在處的字符及其后面字符的位置;

 替換命令(r, replace)

r: 替換光標所在處的字符

 刪除命令:

d: 刪除命令,可結合光標跳轉字符,實現范圍刪除;

dd: 刪除光標所在的行;

#dd:多行刪除;

 粘貼命令(p, put, paste)

p:緩沖區存的如果為整行,則粘貼當前光標所在行的下方;否則,則粘貼至當前光標所在處的后面;

P:緩沖區存的如果為整行,則粘貼當前光標所在行的上方;否則,則粘貼至當前光標所在處的前面;

 復制命令(y, yank)

y: 復制,工作行為相似于d命令;

 yy:復制行

#yy: 復制多行; 

改變命令(c, change)

c: 修改

編輯模式 –> 輸入模式

cc:刪除并輸入新內容

#cc: 

其它編輯操作

 可視化模式:

v: 按字符選定

V:按行行定

 Note:經常結合編輯命令;

d, c, y

 撤消此前的編輯:

u(undo):撤消此前的操作;

#u: 撤消指定次數的操作;

 撤消此前的撤消:

Ctrl+r

 重復前一個編輯操作:

. 翻屏操作:

Ctrl+f: 向文件尾部翻一屏;

Ctrl+b: 向文件首部翻一屏;

 Ctrl+d: 向文件尾部翻半屏;

Ctrl+u:向文件首部翻半屏;

 vim自帶的練習教程:

vim編輯器

j向下字符k向上一個字符l 向右移動一個字符h向左移動一個字符

b 向右移動一個單詞

輸入模式–>編輯模式

ESC

 編輯模式–>末行模式

:

末行模式–>編輯模式

ESC

 輸入–>編輯–>末行

 退出文件:

:q! 不保存退出

:wq 保存退出

:x 保存退出

:wq! 強制保存退出

 編輯模式保存退出:ZZ

  單詞間移動:

w: 下一個單詞詞首

e: 當前單詞或下一個單詞詞尾

b: 當前單詞或前一個單詞詞首

#{w|e|b}:

 行內移動:

^: 行首第一個非空白字符

0:絕對行首

$: 絕對行尾

dd: 刪除光標所在行

d: 刪除命令

p: paste, 粘貼

y: yank, 復制

撤消此前的撤消操作:Ctrl+r

翻屏:

Ctrl+f: 向文件尾部翻一屏

Ctrl+b: 向文件首部翻一屏

測試表達式的類別:

數值比較

字符串測試

文件測試:

存在性測試

-a FILE

-e FILE: 文件存在性測試,存在為真,否則為假;

存在性及類別測試

-b FILE:是否存在且為塊設備文件;

-c FILE:是否存在且為字符設備文件;

-d FILE:是否存在且為目錄文件;

-f FILE:是否存在且為普通文件;

-h FILE -L FILE:存在且為符號鏈接文件;

-p FILE:是否存在且為命名管道文件;

-S FILE:是否存在且為套接字文件;

文件權限測試:

-r FILE:是否存在且可讀

-w FILE: 是否存在且可寫

-x FILE: 是否存在且可執行

文件特殊權限測試:

-g FILE:是否存在且擁有sgid權限;

-u FILE:是否存在且擁有suid權限;

-k FILE:是否存在且擁有sticky權限;

文件大小測試:

-s FILE: 是否存且非空;

文件是否打開:

-t fd: fd表示文件描述符是否已經打開且與某終端相關

-N FILE:文件自動上一次被讀取之后是否被修改過;

-O FILE:當前有效用戶是否為文件屬主;

-G FILE:當前有效用戶是否為文件屬組;

 雙目測試:

FILE1 -ef FILE2: FILE1FILE2是否指向同一個設備上的相同inode

 FILE1 -nt FILE2: FILE1是否新于FILE2;

FILE1 -ot FILE2: FILE1是否舊于FILE2;

 組合測試條件:

邏輯運算:

第一種方式:

COMMAND1 && COMMAND2

COMMAND1 || COMMAND2

! COMMAND

[ -e FILE ] && [ -r FILE ]

第二種方式:

EXPRESSION1 -a EXPRESSION2

EXPRESSION1 -o EXPRESSION2

! EXPRESSION

 必須使用測試命令進行;

 

原創文章,作者:kang,如若轉載,請注明出處:http://www.www58058.com/76284

(0)
kangkang
上一篇 2015-12-18 16:46
下一篇 2015-12-19 19:17

相關推薦

  • 跟著vimtutor走來認識vim

        一、前言        VIM是一款在vi上進行改進的功能性強大的,開源的文本編輯器。     二、vim的設計理念     vim的設計理念是組合;       命令組合:類似于linux的由一個個單一功能的程…

    Linux干貨 2016-05-13
  • N25 第三周作業

    1、列出當前系統上所有已經登錄的用戶的用戶名,注意:同一個用戶登錄多次,則只顯示一次即可。 [jizo@jizo ~]$ who | cut -d" " -f1 | uniq jizo  2、取出最后登錄到當前系統的用戶的相關信息。 [root@jizo ~]# who | tail -l jizo     …

    Linux干貨 2016-12-18
  • Bash學習基礎知識一“命令”

    Bash 學習基礎知識 目錄 一、Shell是個啥? 二、BASH的命令     2.1 命令的語法格式     2.2 什么是命令     2.4 命令的類型     …

    Linux干貨 2015-04-03
  • shell腳本編寫規范

    1 腳本名以.sh結尾,名稱盡量見名之意,比如ClearLog.sh Clear_Log.sh clearlog.sh SerRestart.sh Ser_Restart.sh;2 盡量使用UTF-8編碼,注釋及輸出盡量使用英文;3 一般給到執行權限,但一些關于變量的配置文件不用加執行權限;4 執行的時候可以使用bash 執行,或者使用bash -x執行,可…

    Linux干貨 2017-04-16
  • mongodb的復制集實現

    簡介:  mongodb有兩種類型的復制,第一種是同于MySQL的主從復制模式,第二種是復制集,提供了自動故障轉移的主從復制集群。其中復制集沒有固定的主節點,當一個主機的故障后從節點會重新“選舉”出一個新的主節點,從而提高的系統的可用性 一、實驗環境: (1)各節點信息: node1: 172.16.2.12 node2: 172.16.2.13 …

    Linux干貨 2015-09-05
欧美性久久久久