- 相關(guān)推薦
linux常用命令記錄大全
Linux雖然是免費(fèi)的,但它的確是一個(gè)非常優(yōu)秀的操作系統(tǒng),與MS-WINDOWS相比具有可靠、 穩(wěn)定、速度快等優(yōu)點(diǎn),且擁有豐富的根據(jù)UNIX版本改進(jìn)的強(qiáng)大功能。下面讓我們一起來學(xué)習(xí)Linux的一些主要命令。有一點(diǎn)一定要注意,和dos命令不同的是,Linux的命令(也包括文件名等等)對(duì)大小寫是敏感的。
sbin 系統(tǒng)底層命令存放目錄
bin 一般用戶常用命令目錄
一年多l(xiāng)inux(字符界面)使用記錄大概使用了以下命令,我按照自己意思把linux(centos)命令大概分為幾種類型,有些也不是很合理的分類:
文件用戶管理
ls -lh 顯示權(quán)限
cp -r 復(fù)制文件 文件夾
mkdir test
創(chuàng)建文件夾
rm -rf 刪除文件 文件夾
mv 源目錄 目標(biāo)目錄 移動(dòng)文件或者文件夾
touch 建立空文件
ln -s 源文件路徑 目標(biāo)文件
cp -rf
r代表遞歸目錄 f代表不提示強(qiáng)制
passwd user1 修改一個(gè)用戶的口令 (只允許root執(zhí)行)
usermod -g 組名 用戶名 改變用戶所在組
usermod -d 目錄名 用戶名 改變用戶登入初始 所在目錄
useradd
添加用戶
useradd -g
組名 用戶名
userdel 刪除用戶 -r
groupadd groupname 組添加
groupdel groupname
組刪除
chmod 權(quán)限編號(hào) 用戶名
chgrp testgroup test3.txt
改變文件所屬組
chgrp -R testgroup testdir/ 改變目錄所屬組
chown testuser test.txt
改變文件擁有者
chmod a+x
改變文件權(quán)限 可執(zhí)行
chattr
改變文件的特殊屬性
chattr +a file1 只允許以追加方式讀寫文件
lsattr file
顯示文件的特殊屬性!
umask 改變預(yù)設(shè)的建立文件或目錄時(shí)的屬性
cat file
由第一行開始顯示文件內(nèi)容
tac file 從最后一行開始顯示,可以看出 tac 是 cat 的倒著寫!
more file 一頁(yè)一頁(yè)的顯示文件內(nèi)容
less file 與 more 類似,但是比 more 更好的是,他可以往前翻頁(yè)!
head file 只看頭幾行
tail file 只看尾巴幾行
nl file 顯示的時(shí)候,順道輸出 行號(hào)!
od file
以二進(jìn)制的方式讀取文件內(nèi)容!
gzip 壓縮 zaa.zip 文件名稱 -r aa.zip 目錄路徑 代表壓縮目錄 -m代表刪除源文件
unzip 解壓縮 -x abc 排除abc文件外 其他都解壓
rpm -qa | grep 軟件包名稱
查看是否安裝該軟件
rpm -ivh 軟件包名稱
安裝軟件
rpm -e 卸載軟件
make 多文件編譯
tar -zvxf filename.tar
打開壓縮文件
rpm -ql | grep mysql 查找mysql已安裝的包
rpm -e 包的名字 ,強(qiáng)制刪除加參數(shù) --nodeps
rpm -qa 顯示系統(tǒng)中所有已經(jīng)安裝的rpm包
yum install 包名字 yum安裝
yum remove 包名字 yum刪除
yum list 列出當(dāng)前系統(tǒng)中安裝的所有包
file
可以用來查看這個(gè)文件的類型
diff 這個(gè)指令可以將『兩個(gè)文件之間的差異性列出來』
patch 來進(jìn)行更新,將 expatch.old 更新到 expatch.new
patch -p0 < expatch.patch
ldd /usr/bin/passwd 判斷某個(gè)可執(zhí)行的 binary 文件含有什么動(dòng)態(tài)函式庫(kù)
which
查看可執(zhí)行文件的位置
whereis 查看文件的位置
locate 配合數(shù)據(jù)庫(kù)查看文件位置
vi 編輯文件內(nèi)容 通用
grep -n "關(guān)鍵字" 文件
查找文件內(nèi)容
find 查找文件
find -size +1000000c -print #查長(zhǎng)度大于1Mb的文件
find /home -mmin +60 # 在/home下查60分鐘前改動(dòng)過的文件
find /home -size +512k # 查大于512k的文件
find / -mmin -5 #
查找在系統(tǒng)中最后5分鐘里修改過的文件
ls a* a開頭所有
ls a?
a開頭只有兩個(gè)字符的
ls abc[1-6] 以開始abc后面1-6數(shù)字結(jié)尾的文件
ls 》cmd 輸出文件夾內(nèi)容
ls -ahl
查看文件所在組
磁盤管理
ls
查看目錄
cd
進(jìn)入目錄 ..代表上一級(jí) cd直接進(jìn)入工作目錄 .代表當(dāng)前目錄
pwd
顯示當(dāng)前目錄
df /目錄 查看目錄在系統(tǒng)分區(qū)掛載點(diǎn)
mount
/目錄 掛載目錄
umount /目錄 卸載掛載點(diǎn)
head -n 1 /etc/issue 查看操作系統(tǒng)版本
cat /proc/cpuinfo 查看CPU信息
hostname
查看計(jì)算機(jī)名
lspci -tv
列出所有PCI設(shè)備 (centos6)需要安裝 pciutils
lsusb -tv 列出所有USB設(shè)備 (centos6)需要安裝 usbutils
lsmod
列出加載的內(nèi)核模塊
env 查看環(huán)境變量
echo $path
查看環(huán)境變量
free -m 查看內(nèi)存使用量和交換區(qū)使用量
du -sh <目錄名> 查看指定目錄的大小
grep MemTotal /proc/meminfo 查看內(nèi)存總量
grep MemFree /proc/meminfo 查看空閑內(nèi)存量
uptime 查看系統(tǒng)運(yùn)行時(shí)間、用戶數(shù)、負(fù)載
cat /proc/loadavg 查看系統(tǒng)負(fù)載
sar 來看系統(tǒng)的資源
du 來知道目前磁盤的文件容量
hdparm -i /dev/hda
查看磁盤參數(shù)(僅適用于IDE設(shè)備)
dmesg | grep IDE 查看啟動(dòng)時(shí)IDE設(shè)備檢測(cè)狀況
dump -0aj -f /tmp/home0.bak /home 制作一個(gè) '/home' 目錄的完整備份
dump -1aj -f /tmp/home0.bak /home
制作一個(gè) '/home' 目錄的交互式備份
restore -if /tmp/home0.bak 還原一個(gè)交互式備份
網(wǎng)絡(luò)通訊
netstat -lntp
查看所有監(jiān)聽端口
netstat -antp 查看所有已經(jīng)建立的連接
netstat -s 查看網(wǎng)絡(luò)統(tǒng)計(jì)信息
traccroute
追蹤路由
route -n 查看路由表
ping
查看網(wǎng)絡(luò)是否暢通
系統(tǒng)管理
chkconfig --list 列出所有系統(tǒng)服務(wù)
chkconfig --list | grep on
列出所有啟動(dòng)的系統(tǒng)服務(wù)
cut -d: -f1 /etc/passwd 查看系統(tǒng)所有用戶
cut -d: -f1 /etc/group 查看系統(tǒng)所有組
crontab -l 查看當(dāng)前用戶的計(jì)劃任務(wù)
crontab -e 例行性工作編輯
ifconfig 查看ip配置
kill
殺死進(jìn)程 -9 強(qiáng)制殺死
ps -aux 查看進(jìn)程信息
top
顯示系統(tǒng)重要信息 包括內(nèi)存 cpu 負(fù)載 登入用戶
setup 圖形化界面配置系統(tǒng)信息
runlevel 顯示當(dāng)前運(yùn)行級(jí)別
w 查看活動(dòng)用戶
id <用戶名>
查看指定用戶信息
last
查看用戶登錄日志
who
問問自己是誰
exit 退出當(dāng)前用戶
uname -a 查看內(nèi)核/操作系統(tǒng)/CPU信息
fdisk -l 查看所有分區(qū)
echo $0 查看系統(tǒng)當(dāng)前用戶轉(zhuǎn)換后的shell
echo $shell 查看系統(tǒng)默認(rèn)使用shell
/etc/shells
查看shell列表
sh
轉(zhuǎn)換sh
bash 轉(zhuǎn)換bash
redhat系統(tǒng) chsh -s 轉(zhuǎn)換shell 需要注銷才能轉(zhuǎn)換不同的shell
shutdown
關(guān)機(jī)相關(guān) -h 關(guān)機(jī) -r now 重啟
su - user 切換用戶
su
切換root
reboot 系統(tǒng)重啟
mount | column -t
查看掛接的分區(qū)狀態(tài)
swapon -s 查看所有交換分區(qū)
iptables -L 查看防火墻設(shè)置
mke2fs
建立Linux系統(tǒng)使用的ext2文件系統(tǒng)
fsck 檢查和維護(hù)不一致的文件系統(tǒng)。若系統(tǒng)掉電或磁盤發(fā)生問題,可利用fsck命令對(duì)文件系統(tǒng)進(jìn)行檢查修理磁盤
mkfs.ext3 建立為ext2/ext3文件系統(tǒng)
dumpe2fs 查看特定設(shè)備上現(xiàn)存的文件系統(tǒng)的超級(jí)塊(super block)和塊群(blocks group)的信息
mkswap /dev/hda3
創(chuàng)建一個(gè)swap文件系統(tǒng)
service 服務(wù)名稱 restart stop start 服務(wù)重啟等
其他
history 查看歷史命令
clear
清理屏幕
su 切換超級(jí)管理用戶
sudo passwd root
超級(jí)管理用戶密碼
bc 計(jì)算器
cal
日期
date 時(shí)間 月 年
wall 發(fā)送消息給所有登入用戶
write 發(fā)送消息給某個(gè)用戶
mesg
阻擋其他用戶傳遞過來的消息
發(fā)送郵箱給用戶
pidof :找出某支正在運(yùn)行的程序的 PID
fuser:藉由文件(或文件系統(tǒng))找出正在使用該文件的程序
vmstat :偵測(cè)系統(tǒng)資源變化
dmesg :分析核心產(chǎn)生的信息
------------------------------------------
下面是比較重要的命令詳解 經(jīng)常用到
top、ps、setup命令詳解,vi使用
1 top命令
top命令是Linux下常用的性能分析工具,能夠?qū)崟r(shí)顯示系統(tǒng)中各個(gè)進(jìn)程的資源占用狀況,類似于Windows的任務(wù)管理器。下面詳細(xì)介紹它的使用方法。
top 顯示結(jié)果如下所示:
01:06:48 up 1:22, 1 user, load average: 0.06, 0.60, 0.48
Tasks: 29 total, 1 running, 28 sleeping, 0 stopped, 0 zombie
Cpu(s): 0.3% user, 1.0% system, 0.0% nice, 98.7% idle, 0.0% wa, 0.0% hi, 0.0% si
Mem: 191272k total, 173656k used, 17616k free, 22052k buffers
Swap: 192772k total, 0k used, 192772k free, 123988k cached
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
1379 root 16 0 7976 2456 1980 S 0.7 1.3 0:11.03 sshd
14704 root 16 0 2128 980 796 R 0.7 0.5 0:02.72 top
1 root 16 0 1992 632 544 S 0.0 0.3 0:00.90 init
2 root 34 19 0 0 0 S 0.0 0.0 0:00.00 ksoftirqd/0
3 root RT 0 0 0 0 S 0.0 0.0 0:00.00 watchdog/0統(tǒng)計(jì)信息區(qū)
前五行是系統(tǒng)整體的統(tǒng)計(jì)信息。
第一行是任務(wù)隊(duì)列信息,同uptime命令的執(zhí)行結(jié)果。其內(nèi)容如下:
01:06:48 當(dāng)前時(shí)間
up 1:22 系統(tǒng)運(yùn)行時(shí)間,格式為時(shí):分
1 user 當(dāng)前登錄用戶數(shù)
load average: 0.06, 0.60, 0.48系統(tǒng)負(fù)載,即任務(wù)隊(duì)列的平均長(zhǎng)度。
三個(gè)數(shù)值分別為1分鐘、5分鐘、15分鐘前到現(xiàn)在的平均值。
第二、三行為進(jìn)程和CPU的信息。當(dāng)有多個(gè)CPU時(shí),這些內(nèi)容可能會(huì)超過兩行。內(nèi)容如下:
Tasks: 29 total 進(jìn)程總數(shù)
1 running 正在運(yùn)行的進(jìn)程數(shù)
28 sleeping 睡眠的進(jìn)程數(shù)
0 stopped 停止的進(jìn)程數(shù)
0 zombie 僵尸進(jìn)程數(shù)
Cpu(s): 0.3% us 用戶空間占用CPU百分比
1.0% sy 內(nèi)核空間占用CPU百分比
0.0% ni 用戶進(jìn)程空間內(nèi)改變過優(yōu)先級(jí)的進(jìn)程占用CPU百分比
98.7% id 空閑CPU百分比
0.0% wa 等待輸入輸出的CPU時(shí)間百分比
0.0% hi
0.0% si
最后兩行為內(nèi)存信息。內(nèi)容如下:
Mem: 191272k total物理內(nèi)存總量
173656k used 使用的物理內(nèi)存總量
17616k free 空閑內(nèi)存總量
22052k buffers 用作內(nèi)核緩存的內(nèi)存量
Swap: 192772k total交換區(qū)總量
0k used 使用的交換區(qū)總量
192772k free 空閑交換區(qū)總量
123988k cached 緩沖的交換區(qū)總量。
內(nèi)存中的內(nèi)容被換出到交換區(qū),而后又被換入到內(nèi)存,但使用過的交換區(qū)尚未被覆蓋,
該數(shù)值即為這些內(nèi)容已存在于內(nèi)存中的交換區(qū)的大小。
相應(yīng)的內(nèi)存再次被換出時(shí)可不必再對(duì)交換區(qū)寫入。
進(jìn)程信息區(qū)
統(tǒng)計(jì)信息區(qū)域的下方顯示了各個(gè)進(jìn)程的詳細(xì)信息。首先來認(rèn)識(shí)一下各列的含義。
序號(hào) 列名 含義
a PID 進(jìn)程id
b PPID 父進(jìn)程id
c RUSER Real user name
d UID 進(jìn)程所有者的用戶id
e USER 進(jìn)程所有者的用戶名
f GROUP 進(jìn)程所有者的組名
g TTY 啟動(dòng)進(jìn)程的終端名。不是從終端啟動(dòng)的進(jìn)程則顯示為?
h PR 優(yōu)先級(jí)
i NI nice值。負(fù)值表示高優(yōu)先級(jí),正值表示低優(yōu)先級(jí)
j P 最后使用的CPU,僅在多CPU環(huán)境下有意義
k %CPU 上次更新到現(xiàn)在的CPU時(shí)間占用百分比
l TIME 進(jìn)程使用的CPU時(shí)間總計(jì),單位秒
m TIME+ 進(jìn)程使用的CPU時(shí)間總計(jì),單位1/100秒
n %MEM 進(jìn)程使用的物理內(nèi)存百分比
o VIRT 進(jìn)程使用的虛擬內(nèi)存總量,單位kb。VIRT=SWAP+RES
p SWAP 進(jìn)程使用的虛擬內(nèi)存中,被換出的大小,單位kb。
q RES 進(jìn)程使用的、未被換出的物理內(nèi)存大小,單位kb。RES=CODE+DATA
r CODE 可執(zhí)行代碼占用的物理內(nèi)存大小,單位kb
s DATA 可執(zhí)行代碼以外的部分(數(shù)據(jù)段+棧)占用的物理內(nèi)存大小,單位kb
t SHR 共享內(nèi)存大小,單位kb
u nFLT 頁(yè)面錯(cuò)誤次數(shù)
v nDRT 最后一次寫入到現(xiàn)在,被修改過的頁(yè)面數(shù)。
w S 進(jìn)程狀態(tài)。
D=不可中斷的睡眠狀態(tài)
R=運(yùn)行
S=睡眠
T=跟蹤/停止
Z=僵尸進(jìn)程
x COMMAND命令名/命令行
y WCHAN 若該進(jìn)程在睡眠,則顯示睡眠中的系統(tǒng)函數(shù)名
z Flags 任務(wù)標(biāo)志,參考sched.h
默認(rèn)情況下僅顯示比較重要的PID、USER、PR、NI、VIRT、RES、SHR、S、%CPU、%MEM、TIME+、COMMAND列?梢酝ㄟ^下面的快捷鍵來更改顯示內(nèi)容。
------------------------------------------
2 ps 命令說明
ps命令就是最基本同時(shí)也是非常強(qiáng)大的進(jìn)程查看命令.使用該命令可以確定有哪些進(jìn)程正在運(yùn)行和運(yùn)行的狀態(tài)、進(jìn)程是否結(jié)束、進(jìn)程有沒有僵死、哪些進(jìn)程占用了過多的資源等等.總之大部分信息都是可以通過執(zhí)行該命令得到的
top 顯示結(jié)果如下所示:
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 3532 0.0 0.2 2428 452 ? Ss 20:40 0:00 gpm -m /dev/input/mice -t imps2
USER:說明該程序是屬于哪一個(gè)人的;
PID:該程序的代號(hào);
%CPU:代表該程序使用了多少 CPU 資源;
%MEM:代表該程序使用了多少的 RAM ;
VSZ, RSS:占去的 ram 的大小( bytes );
TTY:是否為登入者執(zhí)行的程序?若為 tty1-tty6 則為本機(jī)登入者,若為 pts/?? 則為遠(yuǎn)程登入者執(zhí)行的程序
STAT:該程序的狀態(tài),( R )為可執(zhí)行的,( S )為該程序正在睡眠中,就是沒有執(zhí)行了,( T )正在偵測(cè)或者是停止了,( Z )僵尸程序,就是 zombie 死掉的程序啦!需要以 kill 除去啰!
START:該程序開始的日期;
TIME:該程序跑了多久的時(shí)間?
COMMAND:該程序的內(nèi)容啦!
------------------------------------------
3 setup介紹
setup是redhat系列(包括centos,fedora等)里很好用的一個(gè)工具,不過可惜的是其它發(fā)行版里并沒有。
為了系統(tǒng)的干凈高效,安裝系統(tǒng)時(shí)使用centos
6最小化安裝(為了可以手工編譯一些軟件包,在安裝時(shí)選擇了馬上定制,多選擇了開發(fā)工具),裝完了配置系統(tǒng)時(shí),發(fā)現(xiàn)沒有setup這個(gè)工
具,whereis setup ,結(jié)果是空的。yum install setup,
系統(tǒng)提示已經(jīng)安裝了setup包。上網(wǎng)查,原來這個(gè)包的名字不叫setup, 而是setuptool,
yum install setuptool
不過運(yùn)行這時(shí)setup只有Authentication configuration可用
防火墻的配置包叫system-config-firewall, yum安裝,自動(dòng)安裝兩個(gè)依賴包:system-config-firewall-tui, system-config-firewall-base.
通過yum list system-config*查詢有好幾個(gè)相關(guān)的包,應(yīng)該都是與setup功能有關(guān)的
system-config-firewall.noarch
system-config-firewall-base.noarch
system-config-firewall-tui.noarch
system-config-date.noarch
system-config-date-docs.noarch
system-config-kdump.noarch
system-config-keyboard
system-config-kickstart.noarch
system-config-language.noarch
system-config-lvm.noarch
system-config-network-tui.noarch
system-config-printer
system-config-printer-libs
system-config-printer-udev
system-config-services.noarch
system-config-services-docs
system-config-users.noarch
system-config-users-docs.noarch
另外還有一個(gè)服務(wù)配置工具,它的名字比較特殊,跟上面所述包名字完全不一樣,它叫ntsysv
運(yùn)行yum install ntsysv 安裝setup的服務(wù)設(shè)置工具
不過,系統(tǒng)配置方面,能手工做就手工做,借助圖形化工具不是提高水平的途徑。
setup是一個(gè)設(shè)置公用程序,提供圖形界面的操作方式。在setup中可設(shè)置7類的選項(xiàng):
1.登陸認(rèn)證方式
2.鍵盤組態(tài)設(shè)置
3.鼠標(biāo)組態(tài)設(shè)置
4.開機(jī)時(shí)所要啟動(dòng)的系統(tǒng)服務(wù)
5.聲卡組態(tài)設(shè)置
6.時(shí)區(qū)設(shè)置
7.X Windows組態(tài)設(shè)置
------------------------------------------
4 vi使用
vi編輯器是所有Unix及Linux系統(tǒng)下標(biāo)準(zhǔn)的編輯器,它的強(qiáng)大不遜色于任何最新的文本編輯器,這里只是簡(jiǎn)單地介紹一下它的用法和一小部分指令。由于
對(duì)Unix及Linux系統(tǒng)的任何版本,vi編輯器是完全相同的,因此您可以在其他任何介紹vi的地方進(jìn)一步了解它。Vi也是Linux中最基本的文本編
輯器,學(xué)會(huì)它后,您將在Linux的世界里暢行無阻。
一般模式:以 vi 處理一個(gè)文件的時(shí)后,一進(jìn)入該文件就是一般模式了。在這個(gè)模式中,你可以使用『上下左右』按鍵來移動(dòng)光標(biāo),您可以使用『刪除字符』或『刪除整行』來處理文件內(nèi)容,也可以使用『復(fù)制、貼上』來處理您的文件數(shù)據(jù)。
編輯模式:在一般模式中可以處理刪除、復(fù)制、貼上等等的動(dòng)作,但是卻無法編輯的!要等到您按下『i, I, o, O, a, A, r,
R』等字母之后才會(huì)進(jìn)入編輯模式。注意了!通常在 Linux 中,按下上述的字母時(shí),在畫面的左下方會(huì)出現(xiàn)『 INSERT 或 REPLACE
』的字樣,才可以輸入任何字來輸入到您的文件中!而如果要回到一般模式時(shí),則必須要按下『Esc』這個(gè)按鍵即可退出編輯模式。
指令列命令模式:在一般模式當(dāng)中,輸入『 : 或 / 』就可以將光標(biāo)移動(dòng)到最底下那一行,在這個(gè)模式當(dāng)中,可以提供您『搜尋資料』的動(dòng)作,而讀取、存盤、大量取代字符、離開 vi 、顯示行號(hào) 等等的動(dòng)作則是在此模式中達(dá)成的!
一般模式: 移動(dòng)光標(biāo)
h 或 向左方向鍵
光標(biāo)向左移動(dòng)一個(gè)字符
j 或 向下方向鍵
光標(biāo)向下移動(dòng)一個(gè)字符
k 或 向上方向鍵
光標(biāo)向上移動(dòng)一個(gè)字符
l 或 向右方向鍵
光標(biāo)向右移動(dòng)一個(gè)字符
[Ctrl] + [f]
屏幕『向前』移動(dòng)一頁(yè)(常用)
[Ctrl] + [b]
屏幕『向后』移動(dòng)一頁(yè)(常用)
[Ctrl] + [d]
屏幕『向前』移動(dòng)半頁(yè)
[Ctrl] + [u]
屏幕『向后』移動(dòng)半頁(yè)
+
光標(biāo)移動(dòng)到非空格符的下一列
-
光標(biāo)移動(dòng)到非空格符的上一列
n
按下數(shù)字后再按空格鍵,光標(biāo)會(huì)向右移動(dòng)這一行的 n 個(gè)字符。例如 20
0
這是數(shù)字『 0 』:移動(dòng)到這一行的最前面字符處(常用)
$
移動(dòng)到這一行的最后面字符處(常用)
H
光標(biāo)移動(dòng)到這個(gè)屏幕的最上方那一行
M
光標(biāo)移動(dòng)到這個(gè)屏幕的中央那一行
L
光標(biāo)移動(dòng)到這個(gè)屏幕的最下方那一行
G
移動(dòng)到這個(gè)文件的最后一行(常用)
nG
移動(dòng)到這個(gè)文件的第 n 行。例如 20G 則會(huì)移動(dòng)到這個(gè)文件的 20 行(可配合 :set nu)
n
光標(biāo)向下移動(dòng) n 行(常用)
一般模式: 搜尋與取代
/word
向光標(biāo)之后尋找一個(gè)字符串名稱為 word 的字符串。(常用)
?word
向光標(biāo)之前尋找一個(gè)字符串名稱為 word 的字符串。
:n1,n2s/word1/word2/g
在第 n1 與 n2 行之間尋找 word1 這個(gè)字符串,并將該字符串取代為 word2 !(常用)
:1,$s/word1/word2/g
從第一行到最后一行尋找 word1 字符串,并將該字符串取代為 word2 !(常用)
:1,$s/word1/word2/gc
從第一行到最后一行尋找 word1 字符串,并將該字符串取代為 word2 !且在取代前顯示提示字符給使用者確認(rèn)(conform)是否需要取代!(常用)
一般模式: 刪除、復(fù)制與貼上
x, X
x 為向后刪除一個(gè)字符, X 為向前刪除一個(gè)字符(常用)
nx
向后刪除 n 個(gè)字符
dd
刪除游標(biāo)所在的那一整列(常用)
ndd
刪除光標(biāo)所在的向下 n 列,例如 20dd 則是刪除 20 列(常用)
d1G
刪除游標(biāo)所在到第一行的所有數(shù)據(jù)
dG
刪除游標(biāo)所在到最后一行的所有數(shù)據(jù)
yy
復(fù)制游標(biāo)所在的那一行(常用)
nyy
復(fù)制光標(biāo)所在的向下 n 列,例如 20yy 則是復(fù)制 20 列(常用)
y1G
復(fù)制游標(biāo)所在列到第一列的所有數(shù)據(jù)
yG
復(fù)制游標(biāo)所在列到最后一列的所有數(shù)據(jù)
p, P
p 為復(fù)制的數(shù)據(jù)在光標(biāo)下一行貼上,P 則為貼在游標(biāo)上一行!(常用)
J
將光標(biāo)所在列與下一列的數(shù)據(jù)結(jié)合成同一列
c
重復(fù)刪除多個(gè)數(shù)據(jù),例如向下刪除 10 行,[ 10cj ]
u
復(fù)原前一個(gè)動(dòng)作。(常用)
進(jìn)入編輯模式
i, I
插入:在目前的光標(biāo)所在處插入輸入之文字,已存在的文字會(huì)向后退;(常用)
a, A
增加:由目前光標(biāo)所在的下一個(gè)字開始輸入,已存在的文字會(huì)向后退:(常用)
o, O
插入新的一行:從光標(biāo)所在的下一行枝行首開始輸入文字;(常用)
r, R
取代:r 會(huì)取代光標(biāo)所在的那一個(gè)字符;R會(huì)一直取代光標(biāo)所在的文字,直到按下 ESC 為止;(常用)
Esc
退出編輯模式,回到一般模式中(常用)
指令列命令模式
:w
將編輯的數(shù)據(jù)寫入硬盤文件中(常用)
:w!
若文件屬性為『只讀』時(shí),強(qiáng)制寫入該文件
:q
離開 vi (常用)
:q!
若曾修改過文件,又不想儲(chǔ)存,使用 ! 為強(qiáng)制離開不儲(chǔ)存文件。
:wq
儲(chǔ)存后離開,若為 :wq! 則為強(qiáng)制儲(chǔ)存后離開(常用)
:e!
將文件還原到最原始的狀態(tài)!
ZZ
若文件沒有更動(dòng),則不儲(chǔ)存離開,若文件已經(jīng)經(jīng)過更動(dòng),則儲(chǔ)存后離開!
:w [filename]
將編輯的數(shù)據(jù)儲(chǔ)存成另一個(gè)文件(類似另存新檔)
:r [filename]
在編輯的數(shù)據(jù)中,讀入另一個(gè)文件的數(shù)據(jù)。亦即將 『filename』這個(gè)文件內(nèi)容加到游標(biāo)所在行后面
:set nu
顯示行號(hào),設(shè)定之后,會(huì)在每一行的前綴顯示該行的行號(hào)
:set nonu
與 set nu 相反,為取消行號(hào)!
n1,n2 w [filename]
將 n1 到 n2 的內(nèi)容儲(chǔ)存成 filename 這個(gè)文件。
:! command
暫時(shí)離開 vi 到指令列模式下執(zhí)行 command 的顯示結(jié)果!例如[ :! ls /home ]
【linux常用命令記錄】相關(guān)文章:
Linux常用命令大全08-15
Linux入門常用命令08-08
Linux常用命令匯總07-28
Linux shell常用命令匯總10-26
Linux常用命令:cd高級(jí)用法09-05
Linux常用命令行匯總09-11
cisco常用命令大全06-23
Linux認(rèn)證概念10-29
CCNA常用命令中文注釋09-07