第四十七章:Linux基礎命令
Linux基礎命令
背景知識
Linux系統中一切皆檔案
在Linux系統中任何東西都是以檔案形式來儲存的。這其中不僅包括我們熟知的文字檔案、可執行檔案等等,還包括硬體裝置、虛擬裝置、網路連線等等,甚至連目錄其實都是一種特殊的檔案。
Linux檔案系統
Linux系統環境下的檔案系統與Windows有很大區別。
在Windows中,每一個碟符下是一個獨立的檔案系統,硬碟有多少個分割槽就有多少個檔案系統。
而在Linux系統中不管建立了多少個硬碟分割槽都只有一個檔案系統。整個檔案系統的根目錄是“/”,從“/”根目錄出發理論上可以找到Linux系統中的所有目錄和檔案。
Linux系統中的路徑
絕對路徑:從“/”根目錄開始逐層查詢檔案和目錄。
/etc/sysconfig/network-scripts
/tmp/vmware-root/vmware-db.pl.2267
相對路徑:以當前目錄或上一級目錄為基準逐層查詢檔案和目錄
當前目錄:“./”
當前目錄的上一級目錄:“../”
使用者家目錄
Linux系統為每一個使用者提供了一個專屬的目錄用來存放它自己的檔案內容。在Linux中使用“~”代表使用者的家目錄。
root使用者作為系統的超級管理員,它的家目錄是/root目錄。
其他普通使用者在建立後會在/home目錄下建立與使用者名稱同名的目錄。例如:使用者tom的家目錄是/home/tom
作業系統不識別副檔名
Linux系統本身不識別副檔名,一個檔案的型別不靠副檔名來區分,所以在Linux系統中,很多檔案沒有副檔名,反之有些目錄的名字中有“.”。
檔案操作命令
1.建立目錄
使用絕對路徑建立目錄
mkdir /root/fruit
使用相對路徑建立目錄
mkdir ./fruit/apple
mkdir fruit/banana
mkdir ../animal
mkdir ~/fruit/grape
建立多層目錄
mkdir -p /root/fruit/orange/red/water/acid
2.進入目錄
使用絕對路徑進入指定目錄
cd /root/fruit/
使用相對路徑進入指定目錄
cd ./fruit/orange/red/
cd fruit/orange/red/
cd ../apple/
回到家目錄
cd ~
3.清屏
clear命令
Ctrl+l快捷鍵
4.建立檔案
使用絕對路徑
touch /root/fruit/apple/acid.txt
使用相對路徑
touch sweet.txt
5.ls命令
單獨使用
ls
檢視全部隱藏檔案和目錄
ls -a
檢視全部隱藏檔案和目錄,同時不顯示“.”和“..”
ls -A
檢視檔案和目錄時在目錄後面附加“/”
ls -F
遞迴檢視目錄
ls -R
組合使用多個引數
例1:檢視詳細資訊同時在目錄後附加斜槓
ls -lF
例2:在例1基礎上附加遞迴效果
ls -lFR
例3:在例2基礎上附加顯示隱藏資源效果
ls -lFRA
例4:按照檔案最新修改順序逆序顯示詳細資訊
ls -ltr
使用管道
在顯示詳細資訊基礎上將所有目錄篩選出來
ls -l | grep ^d
ls -lF | grep /$
在顯示詳細資訊基礎上將所有檔案篩選出來
ls -l | grep ^-
使用快捷方式列出詳情資訊
ll
6.複製操作
複製檔案
cp apple/ orange/
複製目錄
cp -r apple/ orange/
7.刪除操作
刪除檔案
詢問模式
rm one
強制刪除
rm -f one
刪除目錄
詢問模式
rm -r apple
強制刪除
rm -rf apple
8.移動操作
移動檔案或目錄
mv grape/ banana/
重新命名檔案或目錄
mv banana/ banana2
9.VIM編輯器
進入vim編輯器
執行vim命令
退出vim編輯器
:q
用vim編輯器開啟一個檔案
vim 檔案路徑
在開啟檔案進入後輸入內容
按i鍵進入編輯模式,然後可以自由輸入。輸入完成按Esc鍵離開編輯模式,回到一般模式。
按o鍵在當前行的下一行開始輸入。
儲存檔案內容
:w
儲存且退出
:wq
退出但是不儲存
:q!
強制儲存
:w!
這裡還需要參考具體的檔案操作許可權
顯示行號
:set nu
移動游標
k鍵相當於↑
j鍵相當於↓
h鍵相當於←
l鍵相當於→
回到第一行的開頭位置
gg
前往最後一行的開頭位置
G
前往指定某一行開頭位置
30G
刪除當前行
dd
撤銷剛才的操作
u
重做
Ctrl+r
複製當前行
yy
貼上
p
複製多行
y5y
進入編輯模式
按i鍵在當前游標前插入
輸入I在當前行前面插入
按a鍵在當前游標後插入
輸入A在當前行後面插入
按o鍵在當前游標的下一行插入
修改單個字元(始終都沒有進入編輯模式)
第一步:按r鍵
第二步:輸入
查詢
/關鍵詞
n向下找
N向上找
替換
:%s/舊字串/新字串/g
10.檢視檔案內容
檢視整個檔案內容
cat 檔案路徑
分屏檢視檔案內容
less 檔案路徑
空格向下翻頁
b向上翻頁
q退出
/關鍵詞查詢
n向下找
N向上找
檢視檔案末尾內容
tail -n 5 檔案路徑
實時檢視檔案末尾新增內容
tail -f 檔案路徑
使用Ctrl+c終止
11.在一定範圍內查詢檔案
find /root -name "*.txt"
12.不進入檔案,在外部搜尋檔案內容
帶行號顯示匹配內容:grep -n net anaconda-ks.cfg
帶行號顯示不匹配內容:grep -nv net anaconda-ks.cfg
13.檢視程序資訊
直接檢視全部程序資訊
ps -ef
分屏檢視全部程序資訊
ps -ef | less
檢視指定名稱的程序資訊
ps -ef | grep migration | grep -v grep
這裡使用了兩層管道,將查詢程序的命令自身排除
14.檢視某個埠號是否被監聽
netstat -anp|grep :2181
15.解壓tar包
tar -zxvf tar包路徑
16.檢視命令歷史
history
17.將命令執行的結果寫入檔案
history > history.txt
history >> history.txt
18.列印當前目錄的絕對路徑
pwd
19.列印當前系統的PATH環境變數值
echo $PATH
20.使用幫助命令調出指定命令的文件
man ls
21.關機
poweroff
22.重啟
reboot