什么是命令、命令行
·命令行:即:Linux終端(Terminal),是一種命令提示符頁面。以純“字符”的形式操作操作系統,可以使用各種字符化命令對操作系統發出操作指令。
·命令:即Linux程序。一個命令就是一個Linux的程序,命令沒有圖形化頁面,可以在命令行(終端中)提供字符化的反饋。
Linux命令基礎格式
無論是什么命令,用于什么途徑,在Linux中,命令有其通用的格式:
comman [-options] [parameter]
· command : 命令本身
· -options :【可選,非必填】命令的一些選項,可以通過選項控制命令的行為細節
· parameter :【可選,非必填】命令行的參數,多數用于命令的指向目標等
語法中的[],表示可選的意思
示例:
· ls-l/home/itheima,ls是命令本身,-l是選項,/home/itheima是參數
? ? ? ? ·意思是以列表的形式,顯示/home/itheima目錄內的內容
·cp-r test1 test2,cp是命令本身,-r是選項,test1和test2是參數
? ? ? ? ·意思是復制文件夾 test1 成為 test2
ls命令
ls命令的作用是列出目錄下的內容,語法細節如下:
ls [-a -l -h] [Linux路徑]
· -a -l -h 是可選的選項
·Linux路徑是此命令可選的參數
當不使用選項和參數,直接使用ls命令本體,表示:以平鋪形式,列出當前工作目錄下的內容
-a 選項
ls [-a -l -h] [Linux路徑]
·-a選項,表示:all 的意思,即列出全部文件(包含隱藏的文件/文件夾)
·
可以看到,ls -a 對比 ls 列出的內容更多了。
·圖中以 . 開頭的,表示是Linux系統的隱藏文件/文件夾 (只要以.開頭,就能自動隱藏)
·只有通過-a選項,才能看到這些隱藏的文件/文件夾
-l 選項
ls [-a -l -h] [Linux路徑]
·-l 選項,表示:以列表(豎向排列) 的形式展示內容,并展示更多信息
-h選項
ls [-a -l -h] [Linux路徑]
·-h 表示易于閱讀的形式,列出文件大小,如K、M、G;
·-h 選項必須要搭配 -l 一起使用
?ls命令選項的組合使用
語法中的選項是可以組合使用的,比如學習的-a和-l可以組合應用。
寫法:
·ls -l -a
·ls -la
·ls -al
上述三種寫法都是一樣的,表示同時應用-l和-a的功能
cd切換工作目錄
cd命令來自英文:Change Directory
語法:cd (Linux路徑)
·cd命令無需選項,只有參數,表示切換到哪個目錄下
·cd命令直接執行,不寫參數, 表示回到用戶的HOME目錄
pwd 查看當前工作目錄
通過ls來驗證當前的工作目錄,其實是不恰當的。
通過pwd來查看當前所在的工作目錄。
pwd命令來自:print work directory
語法:pwd
·pwd命令,無選項,無參數,直接輸入pwd即可
相對路徑和絕對路徑
·cd /home/weiyicheng/desktop
·cd desktop
絕對路徑:以根目錄為起點,描述路徑的一種寫法,路徑描述以/開頭
相對路徑:以當前目錄為起點,描述路徑的一種寫法,路徑描述無需以/開頭
特殊路徑符
.? ? ? ? 表示當前目錄,比如cd ./表示切換到當前目錄下的Desktop目錄內,和cd Desktop效果一樣
..? ? ? ? 表示上一級目錄,比如:cd .. 即可切換到上一級目錄,cd ../ ..切換到上二級目錄
~? ? ? ? 表示HOME目錄,比如:cd ~即可切換到HOME目錄或cd ~/Desktop,切換到HOME內的Desktop目錄
通過mkdir命令創建目錄(文件夾)
mkdir來自英文:Make Directory
語法:mkdir [-p] Linux路徑
· 參數必填,表示Linux路徑,即要創建的文件夾的路徑,相對路徑或絕對路徑均可
· -p選項可選,表示自動創建不存在的父目錄,適用于創建連續多個層級的目錄,例如:mkdir -p test1/test2
文件操作指令(touch、cat、more)
touch創建文件
語法:touch Linux路徑
·? ? ? ? touch命令無選項,參數必填,表示要創建的文件路徑,相對、絕對、特殊路徑符均可以使用
深色表示文件夾,淺色表示文件,最開頭是d的也代表文件夾。開頭-代表文件
cat命令 查看文件內容
有了文件后,我們可以通過cat命令查看文件的內容。
語法:cat Linux路徑
·cat 同樣沒有選項,只有必填參數,參數表示:被查看的文件路徑,相對、絕對、特殊路徑符都可以使用
more命令查看文件內容
more命令同樣可以查看文件內容,同cat不同的是:
·? ? ? ? cat是直接將內容全部顯示出來
·? ? ? ? more支持翻頁,如果文件內容過多,可以一頁頁的顯示
語法:more Linux路徑
·? ? ? ? 同樣沒有選項,只有必填參數,參數表示:被查看的文件路徑,相對、絕對、特殊路徑符都可以使用
注意:按下:空格翻頁,B上一頁,Q退出查看,回車下一行,H打開幫助如下圖
cp命令復制文件文件夾
語法:cp [-r] 參數1 參數2;
· -r 選項,可選,用于復制文件夾使用,表示遞歸
· 參數1,Linux路徑,表示被復制的文件或文件夾
· 參數2,表示要復制去的地方
mv移動文件或文件夾
mv命令可以用于
語法: mv 參數1 參數2
· 參數1,Linux路徑,表示被移動的文件或問價夾
· 參數2,Linux路徑,表示要移動去的地方,如果目標不存在,則進行改名,確保目標存在
rm命令可用于刪除文件,文件夾
rm命令來自單詞:remove
語法:rm [-r -f]? 參數1 ...... 參數N
·同cp命令一樣,-r用于刪除文件夾
· -f 表示force,強制刪除(不會彈出確認信息)
? ? ? ? · 普通用戶刪除內容不會彈出提示,只有root管理員用戶刪除內容會有提示
? ? ? ? · 所以一般用戶用不到-f選項
· 參數1、參數2、......、參數N 表示要刪除的文件夾路徑,按空格隔開
rm刪除文件,文件夾 -通配符
rm命令支持通配符*,用來模糊匹配
· 符號*表示通配符,即匹配任意內容(包含空),實例:
· test*,表示匹配任何以test開頭的內容
· *test,表示任意以test結尾的內容
· *test*,表示匹配任何包含test的內容
查找命令(which,find)
which命令 查找命令所在位置
語法:which 要查找的命令
find命令·按文件名查找文件
在Linux系統中,可以通過find命令去搜索指定的文件。
語法:find 起始路徑 -name "被查找文件名"
find命令 - 按文件大小查找文件
語法: find 起始路徑 -size + | -n[kMG]
· +,- 代表大于和小于
·n代表大小數字
·kMG代表大小單位,k(小寫字母)表示kb,M表示MB,G表示GB
示例:
·查找小于10KB的文件:find / -size -10k
·查找大于100MB的文件:find / -size +100M
·查找大于1GB的文件:find / -size +1G
grep命令
通過grep命令,從文件中通過關鍵字過濾文件行
語法:grep [-n] 關鍵字 文件路徑
·選項 -n ,可選,表示在結果中顯示匹配的行的行號。
·參數,關鍵字,必填,表示過濾的關鍵字,帶有空格或其他特殊符號,建議使用""將關鍵字包圍起來
·參數,文件路徑,必填,表示要通過濾內容的文件路徑,可作為內容輸入端口
wc命令做數量統計
可以用過wc命令統計文件的行數,單詞數量等
語法:wc [-c -m -l -w] 文件路徑
·選項,-c,統計bytes數量
·選項,-m,統計字符數量
·選項,-l,統計行數
·選項,-w,統計單詞數量
·參數,文件路徑,被統計的文件,可作為內容輸入端口
管道符
管道符的含義是:將管道符左邊的命令的結果,作為右邊命令的輸入
可以進行嵌套
echo命令
echo命令在命令行內輸出指定的內容
語法:echo 輸出的內容
·無需選項,只有一個參數,表示要輸出的內容,復雜內容可以用“”包圍
·帶有康=空格或\等特殊符號,建議使用雙引號包圍
? ? ? ? ·因為不包圍的話,空格后面很容易被識別為參數2,盡管echo不受影響,但要養成習慣
反引號`(大鍵盤最左上方esc下面的那個鍵)
通過將命令使用反引號(飄號)包圍起來,此時將會被當作命令執行而非普通的字符
重定向符
重定向符:>和>>
· >,將左側的命令結果,覆蓋寫入到符號右側指定的文件中
· >>,將左側命令的結果,追加寫入到符號右側指定的文件中
演示:
使用>覆蓋內容
使用>>追加內容
tail命令,查看文件尾部內容
使用tail命令,可以查看文件尾部的內容,跟蹤文件的最新更改
語法:tail [-f -num] Linux路徑
·參數,Linux路徑,表示被跟蹤的文件路徑
·選項,-f,表示持續跟蹤,CTRL+C會停止追蹤
·選項,-num,表示,查看尾部多少行,不填默認10行
vi\vim編輯器介紹
vi\vim是visual interface的簡稱,是Linux中經典的文本編輯器
同圖形化界面中的文本編輯器一樣,vi是在命令行下對文本進行編輯的絕佳選擇。
vim是vi的加強版本,兼容vi的所有指令,不僅能編輯文本,而且還具有shell程序編輯的功能,可以不用顏色字體來辨別語法的正確性,極大方便了程序的設計和編程性。
vi\vim編輯器的三種工作模式
命令模式(Command mode)
? ? ? ? 命令模式下,所敲的按鍵編輯器都理解為命令,以命令驅動執行不同的功能。
? ? ? ? 此模式下,不能自由進行文本編輯。
輸入模式 (Insert mode)
? ? ? ? 也即是所謂的編輯模式,插入模式。
? ? ? ? 此模式下,可以對文件內容進行自由編輯。
底線命令模式(Last line mode)
? ? ? ? 以:開始,通常用于文件保存、退出。
語法:
vi 文件路徑
vim 文件路徑
vim兼容全部的vi功能,后續全部使用vim命令
·如果文件路徑表示的文件不存在,那么此命令會用于編輯新的文件
·如果文件路徑表示的文件存在,那么此命令用于編輯已有文件
使用
通過vi/vim命令編輯文件,會打開一個新的窗口,此時這個窗口就是:命令模式窗口
命令模式是vi編輯器的入口和出口
·進入vi編輯器會進入命令模式
·通過命令模式輸入鍵盤指令,可以進入輸入模式
·輸入模式需要退回到命令模式,然后通過命令可以進入底線命令模式
快速體驗
1·使用:vim hello.txt,編輯一個新的文件,執行后進入的是命令模式
2·在命令模式內,按鍵盤i,進入輸入模式
3·在輸入模式內輸入:內容
4·輸入完成后,按esc退回命令模式
5·在命令模式內,按鍵盤:(shift + :),會進入底線命令模式
6·在底線命令模式輸入:wq,保存并退出vim編輯器