vi編輯器和shell腳本的編輯使用方法
- vi編輯器的使用方法命令:
<一> 三種模式
1.命令模式
此模式下,所輸入的命令,不會(huì)顯示,即在用戶屏幕上看不到用戶所輸入的命令。
2.輸入模式
此模式下,可以進(jìn)行文件的編輯。進(jìn)入輸入模式:在命令模式下輸入。
3.末行模式
在命令模式下,輸入冒號(hào),在屏幕左下角會(huì)出現(xiàn)一個(gè)冒號(hào),此時(shí)即進(jìn)入末行模式
1.輸入模式:
vim 是vi的增強(qiáng)版,兩者兼容
vi 打開(kāi)一個(gè)文件:vi 文件名
1在編輯模式下
i:在當(dāng)前光標(biāo)之前插入正文
a:在當(dāng)前光標(biāo)之后插入正文
o:在光標(biāo)所在行的下一行插入文本
O:在光標(biāo)所在行的上一行插入文本
s:替換光標(biāo)之前的字符
2.文本輸入
3.命令模式
1文本的快捷操作
復(fù)制:
yy 復(fù)制光標(biāo)所在行的內(nèi)容到內(nèi)存緩沖區(qū)
nyy 從光標(biāo)所在行開(kāi)始復(fù)制n行
粘貼
p:粘貼至光標(biāo)所在下一行
(大寫(xiě))P:粘貼至光標(biāo)所在上一行
字符復(fù)制
按v鍵進(jìn)入可視模式
v:逐個(gè)字符復(fù)制可從某一行的任意位置開(kāi)始復(fù)制
(大寫(xiě))V:按行復(fù)制
選中要復(fù)制的正文后,按y鍵進(jìn)行復(fù)制,p鍵粘貼
刪除和撤銷(xiāo)
dd:整行刪除(光標(biāo)所在行)
ndd:刪除從光標(biāo)所在行開(kāi)始的n行
dw:刪除光標(biāo)之后的一個(gè)字符
ndw:刪除光標(biāo)之后的n個(gè)字符
db:刪除光標(biāo)之前的一個(gè)字
ndb:刪除光標(biāo)之前的n個(gè)字
x:刪除光標(biāo)所在位置的一個(gè)字符
nx:刪除光標(biāo)所在位置及其后的n個(gè)字符
替換
rc:用字符c替換當(dāng)前光標(biāo)里的字符
nrc:用n個(gè)字符c代替光標(biāo)之后的n個(gè)字符
行間快速跳轉(zhuǎn)
H:跳轉(zhuǎn)到當(dāng)前屏幕最上方
nH:
M:跳轉(zhuǎn)到屏幕中間位置
L:跳轉(zhuǎn)到屏幕最下方
nL:
gg:快速跳轉(zhuǎn)到第一行
G:快速跳轉(zhuǎn)到最后一行
末行模式
按下esc鍵,輸入冒號(hào)進(jìn)入末行模式
快速跳轉(zhuǎn):
:n 跳轉(zhuǎn)到指定行
保存和退出
:q 退出
:q! 強(qiáng)制退出
:w 保存
:w! 強(qiáng)制保存
:wq 保存退出
:wq! 強(qiáng)制保存退出
:qa 全部退出(多文件編輯時(shí))
:wa 全部保存
:wqa 全部退出保存
(3)末行模式下的文件快捷操作
:nw 文件 將第n行寫(xiě)入文件中
:a,bw 文件 將文件a到b行寫(xiě)入文件中
:1,.w 文件 將第一行到當(dāng)前行寫(xiě)入文件中
:f 文件 文件重命名
:f 打印文件的基本信息
(4)字符串(string)搜索
/string
正向搜索,跳轉(zhuǎn)到該string第一次出現(xiàn)的位置,
按字母n,跳轉(zhuǎn)到該string下一次出現(xiàn)的位置
搜索完后,會(huì)再次從文件頭開(kāi)始搜索
?string
5多個(gè)文件編輯
vi 文件名 文件名 文件名
分屏查看/編輯
橫屏編輯多文件按
vi -o 文件1 文件2 文件3
豎屏分屏編輯多個(gè)文件
vi -O 文件名 文件名 文件名
:vs 文件名 豎屏打開(kāi)文件
:sp 文件名 橫屏打開(kāi)文件
6)文件加密
vi -x 文件名
按提示,自己輸入密碼。
shell腳本
簡(jiǎn)介
系統(tǒng)操作,文件管理
- 優(yōu)點(diǎn):快速開(kāi)發(fā),無(wú)需編譯,實(shí)時(shí)修改......
- 缺點(diǎn):運(yùn)行效率低,支持?jǐn)?shù)據(jù)類(lèi)型少......
簡(jiǎn)單的shell程序
echo "hello,world!"
程序解析:
echo 即輸出雙引號(hào)里面的內(nèi)容
輸出完畢后自動(dòng)換行
常量
數(shù)字常量:12345
字符常量:abcde
字符串常量:"hello,word!"
簡(jiǎn)單的變量使用
引入:
num=3
echo $num
變量的賦值:
變量名=值
注意:變量在賦值時(shí),等號(hào)兩邊不能有空格。
$:用變量的值
echo:輸出變量的值
(2)變量名
變量名可以由字母,數(shù)字,下劃線組成,通常大寫(xiě)字母表示,便于區(qū)分。
硬性規(guī)定:變量名不能以數(shù)字0~9開(kāi)頭。
(3)變量的使用
變量在使用的時(shí)候無(wú)需指定數(shù)據(jù)型,shell是一個(gè)動(dòng)態(tài)決定數(shù)據(jù)的語(yǔ)言。
變量在使用時(shí)直接賦值,即“變量名=值”。等號(hào)兩側(cè)無(wú)空格??!
變量在引用的時(shí)候,形式為:$變量名
為了區(qū)分變量在引用時(shí)盡量使用下列形式:
${變量名} 或者 "$變量名"
(4)變量的賦值
變量在使用時(shí)直接賦值,即“變量名=值”。等號(hào)兩側(cè)無(wú)空格??!
Shell里面,變量的賦值均以字符串的形式進(jìn)行的
若賦值時(shí),有空格, 要用""括起來(lái)?。?!
(5)若變量在使用時(shí)未定義,則它的值為空
(6)echo "${NUM},${NUM1}"
echo打印""里面的內(nèi)容
基本數(shù)據(jù)類(lèi)型
整型: %d
字符型: ? %c
字符串: %s
浮點(diǎn)型:
printf的使用
printf "${NUM},${NUM1}\n"
(1)printf 不能自動(dòng)換行
(2)按一定格式輸出""里面的內(nèi)容
(3)printf "%d,%d\n" $NUM $NUM1
(4)%m.nf
m:打印輸出的總位數(shù)
n:小數(shù)點(diǎn)后保留的位數(shù)
若小數(shù)部分+小數(shù)點(diǎn)+整數(shù)部分<m,則多出部分用空格代替輸出
右對(duì)齊方式輸出
(5)%-m.nf
左對(duì)齊方式輸出,同上。
注釋
注釋一行:
#...................................
總結(jié)語(yǔ)句:
今天老師主要將的是shell和vi的命令形式,和各種命令的方式,老師將的比較多,記不住。但是能跟上。