溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

Linux中的vi編輯器怎么用

發(fā)布時間:2021-11-06 18:07:47 來源:億速云 閱讀:174 作者:柒染 欄目:建站服務(wù)器

這期內(nèi)容當(dāng)中小編將會給大家?guī)碛嘘P(guān)Linux中的vi編輯器怎么用,文章內(nèi)容豐富且以專業(yè)的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。

創(chuàng)建練習(xí)文件
[root@tianyun ~]# ll -a > list.txt
文件編輯器 gedit
文件編輯器 vi, vim, nano 

vi編輯器工作模式
Linux中的vi編輯器怎么用
命令模式:
a. 光標定位 
hjkl 
0 $ 
gg G 
3G 進入第三行 
/string (n N 可以循環(huán)的) 快速定位到某一行 
/^d
/txt$

b. 文本編輯(少量)
y 復(fù)制 yy 3yy ygg yG (以行為單位) 
d 刪除 dd 3dd dgg dG (以行為單位) 
p 粘貼
x 刪除光標所在的字符
D 從光標處刪除到行尾
u undo撤銷
^r redo重做
r 可以用來修改一個字符

c. 進入其它模式
a 進入插入模式
i 進入插入模式
o 進入插入模式
A 進入插入模式

: 進入末行模式(擴展命令模式)
v 進入可視模式
^v 進入可視塊模式
V 進入可視行模式
R 進入替換模式插入模式:
^P可視塊模式:
塊插入(在指定塊前加入字符): 選擇塊,I 在塊前插入字符, ESC
塊替換: 選擇塊,r 輸入替換的字符 
塊刪除: 選擇塊,d | x
塊復(fù)制: 選擇塊,y

擴展命令模式:
a. 保存退出
:10 進入第10行 
:w 保存 
:q 退出 
:wq 保存并退出 
:w! 強制保存 
:q! 不保存并退出 
:wq! 強制保存退出
:x 保存并退出 ZZ 

b. 查找替換
:范圍 s/old/new/選項 
:1,5 s/root/yang/ 從1-5行的root 替換為yang 
:5,$ s/root/yang/ $表示最后一行
:1,$ s/root/yang/g = :% s/root/yang/g %表示全文 g表示全局
:% s#/dev/sda#/var/ccc#g
:,8 s/root/yang/ 從當(dāng)前行到第8行
:4,9 s/^#// 4-9行的開頭#替換為空
:5,10 s/.*/#&/ 5-10前加入#字符 (.*整行 &引用查找的內(nèi)容)

c. 讀入文件/寫文件(另存為)
:w 存儲到當(dāng)前文件
:w /tmp/aaa.txt 另存為/tmp/aaa.txt 
:1,3 w /tmp/2.txt
:r /etc/hosts 讀入文件到當(dāng)前行后
:5 r /etc/hosts 讀入文件到第5行后

d. 設(shè)置環(huán)境 
臨時設(shè)置: 
:set nu 設(shè)置行號 
:set ic 不區(qū)分大小寫
:set ai 自動縮進
:set list 顯示控制字符
:set nonu 取消設(shè)置行號 
:set noic

永久的環(huán)境: 修改vim環(huán)境配置文件
/etc/vimrc 影響所有系統(tǒng)用戶
~/.vimrc 影響某一個用戶 
# vim ~/.vimrc 
set ic
set nu

刪除一定要使用相對路徑,不要使用絕對路徑

# vim -O /etc/hosts /etc/hostname ^ww切換
# cp /etc/hosts hosts1
# vimdiff /etc/hosts hosts1 
==================================================================

創(chuàng)建文件
[root@localhost ~]# touch aa.txt
[root@localhost ~]# touch aa.txt cc.txt tt.txt
[root@localhost ~]# touch abc{1..10}.txt
[root@localhost ~]# touch {a,b,c}{1..3}.txt

創(chuàng)建目錄
[root@localhost ~]# mkdir abc
[root@localhost ~]# mkdir abcd abce abcf
[root@localhost ~]# mkdir abc{1..5}
[root@localhost ~]# mkdir -p /root/aa/cc
[root@localhost ~]# mkdir -pv /root/aa/cc -p 遞歸 -v 顯示過程

復(fù)制 cp
cp 源文件地址 目標地址
[root@localhost ~]# cp /root/abc1.txt /tmp/
[root@localhost ~]# cp /root/abc1.txt /tmp/test.txt 復(fù)制過程中重命名
復(fù)制目錄
[root@localhost ~]# cp -r /root/abcd/ /tmp/
[root@localhost ~]# cp -r /root/abcd/ /tmp/aaa 重命名

剪切 mv
cp 源文件地址 目標地址
[root@localhost ~]# mv /root/tt.txt /tmp/
[root@localhost ~]# mv /root/tt.txt /tmp/back.txt
移動目錄
[root@localhost ~]# mv /root/abcf/ /tmp/
[root@localhost ~]# mv /root/abcf/ /tmp/back

刪除 rm rmdir
rmdir 只能刪除空目錄
rm 
[root@localhost ~]# rm aa.txt 
[root@localhost ~]# rm -f cc.txt
[root@localhost ~]# rm -rf abce/ 
[root@localhost ~]# rm -rf a1.txt a2.txt
[root@localhost ~]# rm -rf *.txt
[root@localhost ~]# rm -rf abc*
[root@localhost ~]# rm -rf *
[root@localhost ~]# rm -rf /install.log 

查看文件內(nèi)容
head
[root@localhost ~]# head /root/install.log
[root@localhost ~]# head -n 20 /root/install.log
[root@localhost ~]# head -20 /root/install.log

tail
[root@localhost ~]# tail /root/install.log
[root@localhost ~]# tail -20 /root/install.log
[root@localhost ~]# tail -f /var/log/messages 監(jiān)控日志文件

more 
[root@localhost ~]# more /root/install.log
空格向后一頁 回車向后一行 b 向前一行

less
[root@localhost ~]# less /root/install.log

cat
[root@localhost ~]# cat -n /root/install.log
[root@localhost ~]# cat -n aa.txt 所有行
[root@localhost ~]# cat -b aa.txt 有效行 

[root@localhost ~]# cat -n /root/install.log | less練習(xí):
1.創(chuàng)建以下目錄結(jié)構(gòu)?并且驗證?(一條命令?)
/aa
/ \
bb/ bc/
/ \ \
ca/ cb/ cc/
[root@localhost ftp]# mkdir -pv /aa/bb/c{a,b} /aa/bb/cc
[root@localhost ftp]# mkdir -pv /aa/b{b/c{a,b},c/cc}
[root@localhost ftp]# ls -R /aa/
[root@localhost ftp]# tree /aa
/aa
├── bb
│   ├── ca
│   └── cb
└── bc
└── cc
[root@localhost ftp]# tree -L 2 / -L level2.將/etc/man.config拷貝到ca目錄 (2種寫法) 當(dāng)前目錄時/
[root@localhost ~]# cp /etc/man.config /aa/bb/ca/
[root@localhost /]# cp etc/man.config /aa/bb/ca/

3.將ca下的man.config移動到cc目錄并重命名為test.txt(2種) 當(dāng)前目錄bb
[root@localhost bb]# mv /aa/bb/ca/man.config /aa/bc/cc/test.txt
[root@localhost bb]# mv ca/man.config /aa/bc/cc/test.txt

4.兩次拷貝同一文件到同一目錄下,不出現(xiàn)覆蓋提示
[root@localhost ~]# \cp /root/install.log /tmp/
[root@localhost bb]# /bin/cp /root/install.log /tmp/install.log 

[root@localhost bb]# unalias cp
[root@localhost bb]# cp /root/install.log /tmp/install.log 

5.只顯示/root/install.log文件的第1001行
[root@localhost bb]# cat -n /root/install.log | head -1001 | tail -1VIM文本編輯器
vim的3種基本模式:命令模式,輸入模式,末行模式
由命令模式切換到輸入模式:
a 當(dāng)前字符后輸入
A 當(dāng)前行行尾輸入
i 當(dāng)前字符前輸入
I 當(dāng)前行行首輸入
o 當(dāng)前行下一行輸入
O 當(dāng)前行上一行輸入
s 刪除當(dāng)前字符后輸入
S 刪除當(dāng)前行后輸入

命令模式下
u 撤銷一步操作 
ctrl+r 重做
復(fù)制一行 yy 粘貼p
復(fù)制50行 50yy

剪切/刪除一行 dd 
剪切/刪除50行 50dd 

^行首 
$行尾
d^ 刪除當(dāng)前字符到行首
d$ 刪除當(dāng)前字符到行尾
y^
y$替換
:s/ab/**/ 替換當(dāng)前行匹配到的第一個字符串
:s/ab/**/g 替換當(dāng)前行所有的匹配字符串 s 替換 g 全局

4.打開新的標簽ctrl+shift+t alt+1..... 切換標簽 ctrl+shift+w 關(guān)閉標簽 ctrl+shift+q 關(guān)閉所有終端
#bin 下的存的是命令
使用Shell的兩種方式:
輸入命令 效率低 適合少量的工作
Shell Script(腳本) 效率高 適合完成復(fù)雜,重復(fù)性工作
pwd 顯示當(dāng)前完整目錄
# 表示我們當(dāng)前使用的是超級賬戶
$ 表示我們當(dāng)前使用的是普通賬戶
長主機名:zhuangyao.baidu.com
輸入bash命令注意事項:
輸入命令:
#命令 【選項】 參數(shù) 操作符
#ls 
所有命令后必須有空格(空格的個數(shù)沒有上線)
tab:自動補全
沒補全的原因: 命令寫錯 沒有可執(zhí)行權(quán)限
ctrl+c :中斷當(dāng)前的輸入
常用快捷鍵:
Ctrl + c:終止命令
Ctrl + 上下左右: 以單詞移動
移到命令行首 home
移到命令行尾 end

上述就是小編為大家分享的Linux中的vi編輯器怎么用了,如果剛好有類似的疑惑,不妨參照上述分析進行理解。如果想知道更多相關(guān)知識,歡迎關(guān)注億速云行業(yè)資訊頻道。

向AI問一下細節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI