Linux基本命令(一)
1.查看文件資訊:ls
ls是英文單詞list的簡寫,其功能為列出目錄的內容,是用戶最常用的命令之一,它類似於DOS下的dir命令。
Linux文件或者目錄名稱最長可以有265個字元,
「.」代表當前目錄,
「..」代表上一級目錄,
以「.」開頭的文件為隱藏文件,需要用 -a 參數才能顯示。
ls常見參數
參數 | 含義 |
-a | 顯示指定目錄下的所有子目錄和文件,包括隱藏文件 |
-l | 以列表方式顯示文件的詳細資訊 |
-h | 配合 -l 以人性化的方式顯示文件大小 |
通配符的使用
通配符 | 含義 |
---|---|
* | 文件代表文件名中所有字元 |
ls te* | 查找以te開頭的文件 |
ls *html | 查找結尾為html的文件 |
? | 代表文件名中任意一個字元 |
ls ?.c | 只找第一個字元任意,後綴為.c的文件 |
ls a.? | 只找只有3個字元,前2字元為a.,最後一個字元任意的文件 |
[] | [」和「]」將字元組括起來,表示可以匹配字元組中的任意一個。「-」用於表示字元範圍。 |
[abc] | 匹配a、b、c中的任意一個 |
[a-f] | 匹配從a到f範圍內的的任意一個字元 |
ls [a- f] * | 找到從a到f範圍內的的任意一個字元開頭的文件 |
ls a-f | 查找文件名為a-f的文件,當「-」處於方括弧之外失去通配符的作用 |
\ | 如果要使通配符作為普通字元使用,可以在其前面加上轉義字元。「?」和「*」處於方括弧內時不用使用轉義字元就失去通配符的作用。 |
ls \*a | 查找文件名為*a的文件 |
2.cd
在使用Unix/Linux的時候,經常需要更換工作目錄。cd命令可以幫助用戶切換工作目錄。Linux所有的目錄和文件名大小寫敏感
cd後面可跟絕對路徑,也可以跟相對路徑。如果省略目錄,則默認切換到當前用戶的主目錄。
命令 | 含義 |
---|---|
cd | 切換到當前用戶的主目錄(/home/用戶目錄),用戶登陸的時候,默認的目錄就是用戶的主目錄。 |
cd ~ | 切換到當前用戶的主目錄(/home/用戶目錄) |
cd . | 切換到當前目錄 |
cd .. | 切換到上級目錄 |
cd – | 可進入上次所在的目錄 |
相對路徑:在輸入路徑時,最前面不是/或者~,表示相對當前目錄所在的目錄位置
絕對路徑:在輸入路徑時,最前面時/或者~,表示從根目錄/家目錄開始的具體位置
3.創建和刪除操作
(1)touch
創建文件或者修改文件時間:
如果文件不存在,可以創建一個文件;
如果文件已經存在,可以修改文件的末次修改日期
(2)mkdir
創建一個新的目錄
選項 | 含義 |
-p | 可以遞歸創建目錄 |
(3)rm
可通過rm刪除文件或目錄。使用rm命令要小心,因為文件刪除後不能恢復。為了防止文件誤刪,
可以在rm後使用-i參數以逐個確認要刪除的文件。
常用參數及含義如下表所示:
參數 | 含義 |
---|---|
-i | 以進行互動式方式執行 |
-f | 強制刪除,忽略不存在的文件,無需提示 |
-r | 遞歸地刪除目錄下的內容,刪除文件夾時必須加此參數 |
4.拷貝和移動文件
序號 | 命令 | 對應英文 | 作用 |
01 | tree[目錄名] | tree | 以樹狀圖列出文件目錄 |
02 | cp源文件 目標文件 | copy | 複製文件或者目錄 |
03 | mv源文件 目標文件 | move | 移動文件或者目錄/文件或者目錄重命名 |
(1)tree:顯示目錄結構
tree命令可以以樹狀圖列出文件目錄結構
選項 | 含義 |
-d | 只顯示目錄 |
(2)cp:拷貝
cp命令的功能是將給出的文件或目錄複製到另一個文件或目錄中,相當於DOS下的copy命令。
常用選項說明:
選項 | 含義 | 例如 |
---|---|---|
-a | 該選項通常在複製目錄時使用,它保留鏈接、文件屬性,並遞歸地複製目錄,簡單而言,保持文件原有屬性。 | |
-f | 已經存在的目標文件而不提示 | |
-i | 互動式複製,在覆蓋目標文件之前將給出提示要求用戶確認,即是將原文件內容覆蓋 |
複製文件a1到當前文件下: cp test1/a1 . -i |
-r | 若給出的源文件是目錄文件,則cp將遞歸複製該目錄下的所有子目錄和文件,目標文件必須為一個目錄名。 |
複製目錄test1下的目錄a到當前文件下: cp test1/a . -r |
-v | 顯示拷貝進度 |
(3)mv:移動、重命名
用戶可以使用mv命令來移動文件或目錄,也可以給文件或目錄重命名。例如將目錄test移動到test1裡面:mv test test1/
常用選項說明:
選項 | 含義 |
---|---|
-f | 禁止互動式操作,如有覆蓋也不會給出提示 |
-i | 確認交互方式操作,如果mv操作將導致對已存在的目標文件的覆蓋,系統會詢問是否重寫,要求用戶回答以避免誤覆蓋文件 |
-v | 顯示移動進度 |
5.查看文件內容
序號 | 命令 | 對應英文 | 作用 |
01 | cat 文件名 | concatenate | 查看文件內容,創建文件,合併文件,最佳文件內容等功能 |
02 | more 文件名 | more | 分屏顯示文件內容 |
03 | grep 搜索文本文件名 | grep | 搜索文本文件內容 |
(1)cat:查看或者合併文件內容
cat命令可以用來查看文件內容、創建文件、文件合併、追加文件內容等功能
cat一次顯示所有的內容、適合查看內容較少的文本文件
選項 | 含義 |
-b | 對非空輸出行編號 |
-n | 對輸出的所有行編號 |
(2)more
more命令用於分屏顯示文件內容,每次只顯示一頁內容
適合用於查看內容較多的文本文件
使用more的操作鍵:
操作鍵 | 功能 |
空格鍵 | 顯示手冊頁的下一屏 |
Enter鍵 | 一次滾動手冊頁的一行 |
b | 回滾一屏 |
f | 前滾一屏 |
q | 退出 |
/word | 搜索word字元串 |
(3)grep
Linux系統中grep命令是一種強大的文本搜索工具,grep允許對文本文件進行模式查找。如果找到匹配模式, grep列印包含模式的所有行。
grep一般格式為:
grep [-選項] 『搜索內容串』文件名
在grep命令中輸入字元串參數時,最好引號或雙引號括起來。
例如:
grep 'a' 1.txt
常用選項說明:
選項 | 含義 |
---|---|
-v | 顯示不包含匹配文本的所有行(相當於求反) |
-n | 顯示匹配行及行號 |
-i | 忽略大小寫 |
grep搜索內容串可以是正則表達式。
正則表達式是對字元串操作的一種邏輯公式,就是用事先定義好的一些特定字元、及這些特定字元的組合,
組成一個「規則字元串」,這個「規則字元串」用來表達對字元串的一種過濾邏輯。
grep常用正則表達式:
參數 | 含義 |
---|---|
^a | 行首,搜尋以 m 開頭的行;grep -n ‘^a’ 1.txt |
ke$ | 行尾,搜尋以 ke 結束的行;grep -n ‘ke$’ 1.txt |
[Ss]igna[Ll] | 匹配 [] 里中一系列字元中的一個;搜尋匹配單詞signal、signaL、Signal、SignaL的行;grep -n ‘[Ss]igna[Ll]’ 1.txt |
. | (點)匹配一個非換行符的字元;匹配 e 和 e 之間有任意一個字元,可以匹配 eee,eae,eve,但是不匹配 ee,eaae;grep -n ‘e.e’ 1.txt |
6.其他
(1)echo 文字內容
會在終端中顯示參數指定的文字,通常會和重定向聯合使用
(2)重定向 > 和 >>
Linux允許將命令的執行結果重定向到一個文件
將本應顯示在終端上的內容 輸出/追加 到指定文件中
其中:
> : 表示輸出 ,會覆蓋文件原有的內容
>> : 表示追加, 回家過內容追加到已有文件的末尾
(3)管道
管道:一個命令的輸出可以通過管道做為另一個命令的輸入。 管道我們可以理解現實生活中的管子,管子的一頭塞東西進去,另一頭取出來,這裡「 | 」的左右分為兩端,
左端塞東西(寫),右端取東西(讀)。
常用的管道顯示命令:
more:分屏顯示文本
grep:在命令執行結果的基礎上查詢指定文本
使用 :ls -lha ~ | more