常用Shell命令及Vi的使用

2021-07-25 00:18:53 字數 3785 閱讀 5614

1.vi 

全螢幕編輯器的使用

2.grep 

找出滿足條件的行

3.cut 

摘取指定的列

4.sort 

對檔案按指定的關鍵字段排序

5.uniq 

刪除檔案中重複的行

6.wc 

對檔案進行字元數、單詞數、行數統計

7.diff 

比較兩個檔案的不同之處

8.who/w  vi

是「visual

」的意思,幾乎所有的

unix

系統都提供這個程式。它是一種全螢幕編輯程式。這裡的螢幕是文字對外顯示的視窗,在這個視窗內,使用者可以自由地移動游標,對文字中的字元、字、行、段進行插入、刪除和修改等操作,並通過上下移動視窗,對檔案的全部內容進行操作。

1.由行編輯器發展而來 2.

雙手不必離開鍵盤就可完成所有操作 3.

不依賴於滑鼠和功能鍵(

home/end/pageup/pagedown/...)

4.在命令模式下,所有的輸入都當作命令看待 5.

在文字輸入模式下,所有的輸入都當作文字

•vi的啟動

在shell

命令狀態下輸入

vi filename(

開啟現有檔案,或編輯新檔案

) vi •

vi的退出

在擴充套件命令模式下輸入

:wq 

檔案存檔退出

:q! 

不存檔強制退出

:wq 

newfilename 

存為新檔案

newfilename

在檔案中搜尋含有特定字串模式的行,並顯示出來。

命令格式:grep [-clnvy] 

-c只顯示符合字串模式的總行數

-l只顯示符合字串模式的檔案的檔名

-n顯示符合字串模式的行的行號

-v顯示不含字串模式的行

-y不區分字母的大小寫

字串模式中的特殊符號:

.匹配任一字元

*匹配任意多個字元

^匹配行首

$匹配行尾

匹配

中的任意字元

[^ ]與不在

內的任意字元匹配

%grep ab myfile

搜尋

myfile

檔案,顯示所有包含字串

ab的行。

grep

^abmyfile

搜尋

myfile

檔案,顯示所有以字串

ab開頭的行。

grep

v

^abmyfile

搜尋

myfile

檔案,顯示所有不以字串

ab開頭的行。

grep

l

[hh]ello*

顯示當前目錄下所有包含字串

hello/hello

的檔案的檔名。

grep在命令輸出中的過濾作用:

配合管道命令

|可過濾掉不需的資訊:

ls –l | grep 「^d」 

只顯示出當前目錄下的目錄

who | grep tty1 

把當前在

tty1

控制台登入的使用者列出

ps –a | grep 

xinetd 

只顯示當前系統執行的守護程序

xinetd

有如下國家資訊檔案

country.txt

,包含以下字段:國家名、首都、所在洲、使用語言,欄位間用

「,」分割。

england,landon,europe,english

china,beijing,asia,chinese

japan,tokyo,asia,japanese

america,w.s.dc,america,english

france,paris,europe,franch

...... 1

、統計國家資訊檔案中出現的所有語言

cut 

-d, -f4 country.txt | sort | uniq 2

、統計亞洲國家所使用的語言數量

grep 『asia』 country.txt | cut 

-d, -f4 | sort | uniq | wc -l

3、統計歐洲國家講英語的國家數量

grep 『eurpoe』 country.txt | grep 『english』 | wc -l

比較兩個文字檔案的差別,通常用於修改過檔案同原備份檔案的比較

格式:

diff 

file1 

file2

輸出格式:

n1 a n3,n4 

file1

的第n1

行後插入了

file2

的第n3到n4

行 n1,n2 c n3,n4 

file1

的第n1到n2

行改變成了

file2

的第n3第n4

行 n1,n2 d n3 

file2

的第n3

行後刪除了原屬於

file1

的第n1到n2

行 每個輸出命令後面列出了兩個檔案不同點的行,用

「<」「>」區分

「<」

表示後面的輸出內容為

file1的

「>」

表示後面的輸出內容為

file2

常用VI命令及解釋

vi的工作模式 1.命令模式 2.插入模式 3.末行模式 常用vi命令及解釋 命令模式 esc退出或進入命令模式 i在游標前插入 i在行首插入 a在游標後插入 a在行末插入 s剪下游標後乙個字元,並變為插入模式 s剪下游標所處的一行,並變為插入模式 o在當前行的下面另起一行,並變為插入模式 o在當前...

vi和vim的區別及vi命令的使用

抄錄於 vi和vim都是多模式編輯器,vim是vi的公升級版本,相容vi的所有命令,還有一些新的特性在裡面 vi適用於文字編輯,vim更適用於coding vim的優勢 1.多級撤銷 在vi中,按u只能撤銷上次命令,但在vim中可以無限制的撤銷 2.易用性 vi只能執行於unix中,而vim可以執行...

常用的vi命令

之前只是知道最基本的vi命令vi bash.sh 然後 s 替換 然後wq.趁空了整理下常用的vim命令.也許該文章後續會有更新,因為是遇到了的才記錄下來,如果對讀者有幫助,我會很開心 感覺比較重要的兩個 vi 如何執行撤銷操作 u vi 如何執行恢復撤銷的操作 ctrl r命令 含義命令含義i 在...