基本用法: vi 文件 --> 輸入 i --> esc ---> wq
用法原理: 編輯三種模式
a 命令模式(輸入快捷方式信息)
b 編輯模式(進行文件信息編輯)
c 底行模式(實現(xiàn)一些特殊功能)
命令模式 - i -> 編輯模式 - esc -> 命令模式
命令模式 - :/? -> 底行模式 - esc -> 命令模式
編輯模式 -- 命令模式 -- 底行模式
命令模式快速移動光標位置 | ||
---|---|---|
shift+g/ 大寫字母G | --- 快速移動光標 到文檔最后一行 | |
gg | --- 快速移動光標 到文檔首行 | |
200gg/300G | --- 快速移動光標 到指定行 | |
shift+6 ^ | --- 快速移動光標 到光標指定行的行首 End 0 | |
shift+4 $ | --- 快速移動光標 到光標指定行的行尾 Home |
編輯模式 | ||
---|---|---|
b | --- 代表光標指定 上一個單詞 | |
w | --- 代表光標指定 下一個單詞 | |
cw | --- 代表光標位置刪除一個單詞 并進入編輯模式 | |
dw | --- 代表光標位置刪除一個單詞 不進入編輯模式 | |
A | --- 將光標切換到一行行尾進入編輯狀態(tài) | |
I | --- 將光標移動到行首進入編輯狀態(tài)(大寫I) | |
o | --- 在當前行下面新起一行進入編輯狀態(tài) | |
O | --- 在當前行上面新起一行進入編輯狀態(tài) | |
S | --- 將光標所在位置整行刪除并進入編輯狀態(tài) | |
R | --- 將光標所在位置字符進入連續(xù)替換 | |
a | --- 在光標當前位置下一個字符進入編輯狀態(tài) | |
i | --- 在光標所處位置進入編輯狀態(tài) | |
s | --- 將光標所在文件字符刪除并進入編輯狀態(tài) | |
r | --- 將光標所在位置字符進行單個替換 |
快速編輯文件內(nèi)容方法 | ||
---|---|---|
yy | --- 進行一行內(nèi)容快速復(fù)制 | |
3yy | --- 進行三行內(nèi)容快速復(fù)制 | |
p | --- 粘貼復(fù)制的內(nèi)容 | |
3p | --- 粘貼三次復(fù)制的內(nèi)容 | |
dd | --- 刪除(剪切)光標所在行內(nèi)容 | |
3dd | --- 刪除(剪切)三行內(nèi)容 | |
dG | --- 將光標以下所有行內(nèi)容都刪除(剪切) | |
dgg | --- 將光標前的所有內(nèi)容都刪除(剪切) | |
d$ | --- 刪除光標后當前行的 | |
d^ | --- 刪除 |
特殊操作技巧 | ||
---|---|---|
u | --- 撤回操作 undo | |
ctrl+r | --- 取消撤回 redo |
底行模式 | ||
---|---|---|
:wq | --- 保存退出 | |
:w | --- 保存 | |
:q | --- 直接退出 | |
:wq! | --- 強制保存退出 | |
:w | --- 保存 | |
:q! | --- 強制直接退出 | |
:set nu | --- 顯示文件行號信息 | |
:set nonu | --- 取消行號顯示 | |
:%s###g | --- 文件所有內(nèi)容做替換 | |
:s###g | --- 將光標所在行內(nèi)容進行替換 | |
:2s###g | --- 將第2行進行替換修改 | |
:2,4s###g | --- 將第2行到第4行進行替換修改 | |
:2,$s###g | --- 將第2行到結(jié)尾最后一行進行替換修改 | |
:2,$s### | --- 將一行中第一個匹配的信息做替換 | |
:1,3copy3 | --- 將連續(xù)多行內(nèi)容進行復(fù)制操作 | |
:1,3move3 | --- 將連續(xù)多行內(nèi)容進行剪切操作 | |
:set ic | --- 設(shè)置過濾數(shù)據(jù)時, 忽略大小寫進行過濾 | |
:set ignorecase | --- 設(shè)置過濾數(shù)據(jù)時, 忽略大小寫進行過濾 | |
/信息 | --- 文件中過濾指定內(nèi)容(頭部開始查找) n 繼續(xù)向下查找 N 繼續(xù)向上查找 | |
/oldgirl\c | --- 忽略大小寫 | |
?信息 | --- 文件中過濾指定內(nèi)容(尾部開始查找) n 繼續(xù)向上查找 N 繼續(xù)向下查找 |
問題:
- 將文件中 "#oldboy" 替換 "oldgirl"
- 如何只將第2行 和 第4行 有oldboy內(nèi)容替換為oldgirl
高級操作方式: 批量編寫文件內(nèi)容 --vim
a 批量多行內(nèi)容進行添加信息 添加#
第一步: 將光標方編輯行最上面
第二步: 進入批量編輯模式(視圖塊)
ctrl+v
第三步: 選中編輯多行信息 方向鍵 上 下
第四步: 回到首行進入編輯模式
shift+i
第五步: 退出編輯模式
esc
b 批量多行內(nèi)容進行刪除信息 刪除#
第一步: 將光標方編輯行最上面
第二步: 進入批量編輯模式(視圖塊)
ctrl+v
第三步: 選中編輯多行信息 方向鍵 上 下 左 右
第四步: 批量刪除選中的信息
d 或者 x
利用echo編輯文件內(nèi)容
echo oldboy > oldboy.txt --- 清空文件信息, 添加指定內(nèi)容
echo oldboy >> oldboy.txt --- 向文件最后一行追加新的信息
echo -e 識別一些特殊內(nèi)容
利用cat編輯文件內(nèi)容
[root@linux67 oldboy]# cat >> oldboy.txt <<EOF
oldboy01
oldboy02
oldboy03
EOF
[root@linux67 oldboy]# cat oldboy.txt
oldgirl
oldboy01
oldboy02
oldboy03
[root@linux67 oldboy]# cat >> oldboy.txt <<oldboy
oldgirl01
oldgirl02
oldboy
[root@linux67 oldboy]# cat oldboy.txt
oldgirl
oldboy01
oldboy02
oldboy03
oldgirl01
oldgirl02
刪除文件命令信息:
rm -- remove
rm -f 文件信息 --- 強制刪除文件信息
rm -rf 目錄信息 --- 強制刪除目錄信息
rm -rf / --- 默認不允許直接刪除/目錄
移動文件命令信息:
mv -- move
mv /移動數(shù)據(jù) /移動路徑
mv -t /移動路徑 /移動數(shù)據(jù)
復(fù)制文件命令信息:
cp -- copy
cp /文件信息 /備份目錄
cp -r /目錄信息 /備份目錄
cp -a /目錄信息 /備份目錄
-a, --archive same as -dR --preserve=all
等價于 -dR --preserve參數(shù)
-d same as --no-dereference --preserve=links
等價于 --no-dereference --preserve=links
-P, --no-dereference never follow symbolic links in SOURCE ???
--preserve[=ATTR_LIST]
preserve the specified attributes (default: mode,ownership,timestamps), if possible additional
attributes: context, links, xattr, all ???
-R, -r, --recursive copy directories recursively
遞歸復(fù)制目錄
/usr/local --- 掌握軟件安裝部署方法
-
掌握利用yum方式安裝軟件 解決軟件依賴
安裝軟件程序
yum install -y 軟件名稱 軟件名稱
yum reinstall -y 軟件名稱
yum list|grep tree --- 查看yum倉庫中有的軟件信息
yum history list 之前錯誤的安裝命令 yum history undo id 完全刪除依賴
安裝軟件包組 (軟件01 軟件02 軟件03)
yum groupinstall -y 軟件包組名稱
yum grouplist 軟甲包組的列表卸載軟件操作
yum provides killall --- 查看一個命令文件輸入哪個軟件包
yum repolist --- 查看可以使用yum倉庫信息 -
掌握利用rpm方式安裝軟件 解決軟件依賴/下載rpm軟件包
安裝軟件包
rpm -ivh 軟件包信息確認軟件是否安裝成功:
rpm -qa 軟件名稱 --- 查看軟件是否安裝成功
rpm -ql 軟件名稱 --- 軟件安裝好在系統(tǒng)目錄中創(chuàng)建了哪些數(shù)據(jù)文件
rpm -qf /usr/bin/animalsay --- 查看一個命令文件屬于哪個軟件包
rpm -qc 配置文件卸載軟件程序:
rpm -e 軟件名稱 --- 卸載指定軟件
rpm -e 軟件名稱 --nodeps --- 忽略依賴進行強制卸載
su xxx 與 su - xxx的區(qū)別
su - 用戶信息 將所有的環(huán)境信息都進行更改
su 用戶信息 有些環(huán)境信息切換用戶時候會被保留
env命令 可以查看當前環(huán)境的所有環(huán)境變量
[root@root ~]# env | grep root
HOSTNAME=root
USER=root
MAIL=/var/spool/mail/root
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin
PWD=/root
HOME=/root
LOGNAME=root