1. 程式人生 > 其它 >04 Linux終端命令01

04 Linux終端命令01

1、常用Linux命令的基本使用

序號命令對應英文作用
01 ls list 檢視當前目錄下的內容
02 pwd print working derectory 檢視當前所在資料夾
03 cd [目錄名] change directory 切換資料夾
04 touch [檔名] touch 如果檔案不存在, 新建檔案
05 mkdir [目錄名] make directory 建立目錄
06 rm [檔名] remove 刪除指定的檔名
07 clear clear 清屏

2、查閱命令幫助資訊

命令名稱

功能

備註

touch

touch不存在的檔案:建立一個新的檔案

touch 存在的檔案:修改檔案的末次訪問時間

mkdir

建立沒有層級關係的目錄:mkdir 目錄名

建立有層級關係的目錄:mkdir -p 目錄1/目錄2/目錄3

rm

通過rm -rf檔案/目錄命令實現刪除 檔案和目錄的功能, rm對應的英文是remove含義: 刪除

rm 檔案: 刪除檔案 (有提示)

rm -f 檔案:(force)強制刪除,忽略不存在的檔案, 無需提示

rm -r 檔案:遞迴地刪除目錄下的內容, 刪除資料夾 時必須加此引數

tree

tree [目錄]:以樹形結構顯示目錄中的檔案和目錄

tree -d [目錄]:只顯示 當前目錄中的目錄

tree -L n [目錄]:只顯示n層目錄

cp

通過cp實現複製將指定的檔案或 目錄複製到一個檔案或目錄中

cp 檔案1 備份檔名:備份指定檔案

cp 檔案1 目錄/: 將檔案複製到目錄中

cp 檔案1 檔案2(存在的): 將檔案複製到另一個檔案中, 實現覆蓋效果

cp -r 目錄1/ 目錄2/:複製目錄 到指定 目錄中

mv

通過mv命令可以用來移動檔案 或 目錄, 也可以給檔案或目錄重新命名

mv 檔案 目錄/:將檔案 移動 另一個目錄中

mv 舊檔名 新檔名:重新命名

mv 被移動目錄 目標目錄

ls ls 是英文單詞list的簡寫, 其功能為列出目錄的內容,是使用者最常用的命令之一

ls -a看當前目錄所有內容 (既包含隱藏, 也包含非隱藏)

ls -l以列表方式顯示檔案的詳細資訊

cd

cd 是英文單詞 change directory 的縮寫, 其功能為 更改當前的工作目錄, 也是使用者最常用的命令之一

cd ..切換到上級目錄

cd - 可以在最近的兩次目錄之間切換

cd ~切換到家目錄(root使用者家目錄是 /root, 其他使用者的家目錄是 /home/使用者名稱)

2.1、command --help 例如:ls --help

缺點: 雖然可以查詢命令的幫助資訊, 但是沒有提供 翻頁、搜尋功能.

2.2、man 手冊

man command 例如: man ls

操作鍵功能
空格鍵 顯示手冊的下一屏
Enter鍵 一次滾動首頁也得一行
b(back) 回滾一屏
f(forward) 前滾一屏
q (quit) 退出
/word 搜尋word字串
n(next) 搜尋下一個
N 搜尋上一個

3、檔案和目錄常用命令

3.1、終端使用技巧

自動補全 : tab鍵

曾經使用過的命令:使用 / 游標鍵可以在曾經使用過的命令之間來回切換

linux 下檔案和目錄的特點

  • linux檔案 或者 目錄 名稱最長可以 256 個字元

  • . 開頭的檔案為隱藏檔案, 需要用 -a 引數才能顯示

  • . 代表當前目錄

  • .. 代表上一級目錄

演練目標:

1 建立檔案 01.txt
2 建立隱藏檔案 02.txt
3 羅列隱藏檔案和非隱藏檔案

[root@node01 export]# touch 01.txt
[root@node01 export]# touch .02.txt
[root@node01 export]# ls
01.txt
[root@node01 export]# ls -a
.  ..  01.txt  .02.txt

3.2 ls常用選項

如果 只使用ls命令 就只能看到當前目錄下 非隱藏 檔案。

如果想增強功能,就需要學習更多的選項

選項英文含義
-a all 顯示指定目錄下所有子目錄與檔案, 包含隱藏檔案
-l 以列表方式顯示檔案的詳細資訊
-h human-readable 配合 -l 以人性化的方式顯示檔案大小

演練目標:

1 切換到 /usr/tmp 清空內容
2 建立隱藏檔案 非隱藏檔案 目錄
3 檢視當前目錄內容 (缺點: 隱藏檔案看不到)
4 檢視當前目錄所有內容 (既包含隱藏, 也包含非隱藏)
5 檢視目錄內容的詳細資訊(檢視檔案型別、許可權、大小等 缺點:檔案大小沒有單位)
6 簡化合並 檢視目錄內容的詳細資訊

[root@node01 tmp]# cd /usr/tmp && rm -rf *
[root@node01 tmp]# ll
total 0
[root@node01 tmp]# touch 01.txt .02.txt
[root@node01 tmp]# ls 
01.txt
[root@node01 tmp]# ls -a
.  ..  01.txt  .02.txt
[root@node01 tmp]# ll
total 0
-rw-r--r--. 1 root root 0 Jul 10 21:04 01.txt
[root@node01 tmp]# ll -a
total 8
drwxrwxrwt.  2 root root 4096 Jul 10 21:04 .
drwxr-xr-x. 20 root root 4096 Jul 10 19:10 ..
-rw-r--r--.  1 root root    0 Jul 10 21:04 01.txt
-rw-r--r--.  1 root root    0 Jul 10 21:04 .02.txt

3.3 ls 和萬用字元的使用

準備工作

# 切換到臨時目錄(先使用, 稍候講解)
cd /usr/tmp

# 清空目錄內容(先使用, 稍候講解)
rm -rf *

# 建立檔案
touch a23.txt 11.txt 111.txt 112.txt 123.txt 223.txt 323.txt 423.txt 523.txt

# 檢視目錄內容
ls

萬用字元含義
* 代表 任意個數 的字元
? 代表任意一個字元, 且只能是一個

需求1:

1 檢視以 1 開頭的檔案或目錄
2 檢視以 3.txt 結尾的 檔案或目錄
3 檢視含有3的檔案列表
4 檢視第二個字元是2的檔案

[root@node01 tmp]# ls 1*
111.txt  112.txt  11.txt  123.txt
[root@node01 tmp]# ls *3.txt
123.txt  223.txt  323.txt  423.txt  523.txt  a23.txt
[root@node01 tmp]# ls *3*
123.txt  223.txt  323.txt  423.txt  523.txt  a23.txt
[root@node01 tmp]# ls ?2*
123.txt  223.txt  323.txt  423.txt  523.txt  a23.txt
萬用字元含義
[abc] 匹配a、b、c中任意一個
[a-f] 匹配從a到f範圍內的任意一個字元

需求2:

1 檢視 第一個字元是 1到5, 以23.txt結尾 的 目錄或檔名

[root@node01 tmp]# ls [1-5]*23.txt
123.txt  223.txt  323.txt  423.txt  523.txt

4、切換目錄

4.1cd

cd 是英文單詞 change directory 的縮寫, 其功能為 更改當前的工作目錄, 也是使用者最常用的命令之一

注意: linux的所有 目錄檔名 都是大小寫敏感的

命令含義
cd 目錄 切換到指定目錄下
cd .. 切換到上級目錄
cd - 可以在最近的兩次目錄之間切換
cd ~ 切換到家目錄(root使用者家目錄是 /root, 其他使用者的家目錄是 /home/使用者名稱)

需求:

1 檢視當前所在目錄
2 切換到 /usr/local
3 切換到 上一級目錄 /usr
4 後退到上一次訪問的目錄中

[root@node01 tmp]# pwd
/usr/tmp
[root@node01 tmp]# cd /usr/local
[root@node01 local]# pwd
/usr/local
[root@node01 local]# cd ../
[root@node01 usr]# pwd
/usr
[root@node01 usr]# cd -
/usr/local

5.建立和刪除操作

5.1touch

目標:

通過 touch 命令 建立檔案

實現:

建立一個空白檔案:touch 不存在的檔案。

修改檔案的末次訪問時間:touch 存在的檔案。

5.2 mkdir

目標:通過 mkdir 命令 建立目錄。

實現:

建立沒有層級關係的目錄:mkdir 目錄名。

建立 有層級關係的目錄:mkdir -p 目錄1/目錄2/目錄3。

# 建立壓縮包目錄
mkdir -p /export/softwares
mkdir -p /export/servers
mkdir -p /export/data

5.3rm

目標:通過 rm -rf 檔案/目錄 命令實現刪除 檔案和目錄的功能, rm 對應的英文是 remove 含義: 刪除。

實現:

rm 檔案:刪除檔案 (有提示)

rm -f 檔案:強制刪除,忽略不存在的檔案,無需提示。

rm -rf 目錄:遞迴地刪除目錄下的內容, 刪除資料夾 時必須加此引數

6、拷貝和移動檔案

序號命令對應英文作用
01 tree [目錄名] tree 以樹狀圖 列出目錄中的內容
02 cp 原始檔 目標檔案 copy 複製檔案或者目錄
03 mv 原始檔 目標檔案 move 移動檔案或目錄 或者 重新命名

6.1 tree (擴充套件)

目標:

通過 tree 命令可以以樹狀圖列出檔案目錄結構。

實現:

tree [目錄]: 以樹形結構顯示目錄中的檔案和目錄

tree -d [目錄]: 只顯示 當前目錄中的目錄

tree -L n [目錄]:顯示指定的兩層

6.2cp

目標:

通過cp實現複製將指定的檔案或目錄複製到兩一個檔案或目錄中

實現:

cp 檔案1 備份檔名:備份指定檔案。

cp 檔案1 目錄/:將檔案複製到目錄中

cp 檔案1 檔案2(存在的):將檔案複製到另一個檔案中, 實現覆蓋效果

cp -r 目錄1/ 目錄2/:複製目錄 到指定 目錄中

6.3mv (move)

目標:

通過mv 命令可以用來 移動 檔案 或 目錄, 也可以給 檔案或目錄重新命名。

實現:

mv 檔案 目錄/:將檔案 移動 另一個目錄中

mv 舊檔名 新檔名:重新命名

mv 被移動目錄 目標目錄:將目錄移動 到 另一個目錄中

7、檢視檔案內容

序號命令對應英文作用
01 cat 檔名 concatenate 檢視小檔案內容
02 less -N 檔名 less 分屏顯示大檔案內容
03 head -n 檔名 檢視檔案的前一部分
04 tail -n 檔名 檢視檔案的最後部分
05 grep 關鍵字 檔名 grep 根據關鍵詞, 搜尋文字檔案內容

詳細操作

命令名稱

功能

備註

cat

通過 cat 會一次顯示所有的內容, 適合檢視內容較少 的文字檔案

cat 檔名顯示檔案內容(不顯示行號)

cat -n 檔名:顯示檔案內容(顯示行號 包含空行)

cat -b 檔名: 顯示檔案內容(顯示行號 排除空行)

less

通過less [引數]檔名命令可以用於分屏顯示檔案內容, 每次只顯示一頁內容

less命令適合檢視內容較多 的文字檔案

less -N 檔名:分屏展示檔案內容, 適合大檔案

空格鍵:顯示手冊頁的下一螢幕

Enter:一次滾動手冊頁的一行

b:回滾一屏

f:向前一屏

q:退出

/word:

head -5檔案檢視檔案的前5行內容

word字串 n向下找,N向上找

head

通過head命令檢視文件的前幾行內容

head -5檔案檢視檔案的前5行內容
tail 檢視文件(日誌)的後幾行內容 tail -10 檔案: 檢視文件的最後10行內容

tail -f 檔名:動態顯示文件的最後內容,一般用來檢視日誌

tail -100f 檔名:動態顯示文件的最後100行內容

grep(重點重點重點) 通過grep命令 搜尋存在關鍵字的行 grep 關鍵字 檔名:搜尋存在關鍵字 的行

grep -n 關鍵字 檔名: 搜尋存在關鍵字的行且顯示行號

grep -i 關鍵字 檔名:忽略大小寫 搜尋存在關鍵字的行

grep -v 關鍵字 檔名:搜尋不存在關鍵字的行

grep 正則 檔名:^a搜尋以關鍵字a開始的行,ke$以關鍵字ke結尾的行

7.1cat

目標:

通過 cat 會一次顯示所有的內容, 適合 檢視內容較少 的文字檔案

實現:

cat 檔名:顯示檔案內容(不顯示行號)

cat -n 檔名:顯示檔案內容(顯示行號 包含空行number)

cat -b 檔名:顯示檔案內容(顯示行號 排除空行number-nonblank)

7.2less

目標:

通過 less [引數] 檔名 命令可以用於分屏顯示檔案內容, 每次只顯示一頁內容,less 命令適合檢視 內容較多 的文字檔案

實現:

第一步 : 分屏顯示檔案內容

less -N 檔名:分屏展示檔案內容, 適合 大檔案,顯示檔案內容 且 顯示行號

操作鍵功能
空格鍵 顯示手冊頁的下一螢幕
Enter 鍵 一次滾動手冊頁的一行
b 回滾一屏
f 向前一屏
q 退出
/word 搜尋word字串
第二步: 根據關鍵詞 搜尋
# 根據關鍵詞搜尋
/word
操作鍵功能
n 向下找
N 向上找

7.3 head

目標:

通過 head 命令檢視文件的前幾行內容

實現:

head -n 數字 檔案:檢視檔案的前5行內容

7.4 tail

目標:

檢視文件(日誌)的後幾行內容

實現:

tail -10 檔案:檢視文件的最後10行內容

tail -f 檔名:

7.5grep(重點重點重點)

目標:

通過 grep 命令 搜尋存在 關鍵字 的行

實現:

grep 關鍵字 檔名:搜尋 存在關鍵字 的行

grep -n 關鍵字 檔名:搜尋 存在關鍵字 的行 且 顯示行號

grep -i 關鍵字 檔名:忽略大小寫 搜尋 存在關鍵字 的行

grep -v 關鍵字 檔名:搜尋 不存在關鍵字 的行

grep 正則 檔名:搜尋 以關鍵字開始 的行 或 以關鍵字結尾 的行

引數含義
^a 行首,搜尋以a開頭的行
ke$ 行尾,搜尋以ke結束的行

8、其他

8.1 管道

目標:

通過 命令1 | 命令2 可以將命令1的結果 通過 命令2 作進一步的處理

實現:

ls /etc/ | grep ^pro:過濾 /etc/ 目錄下 以 pro 開頭的檔案

ls /etc | grep ^pro | wc -l :搜尋存在關鍵字的行數

8.2、 echo 文字內容

echo string 字串輸出到控制檯 , 通常回和重定向聯合使用

8.3、重定向>(覆蓋) 和>>(追加)

目標:

預設情況下命令的結果輸出到控制檯,通過重定向可以將結果輸出到檔案

實現:

echo 2222 > 01.txt:命令的成功結果覆蓋 指定檔案內容

echo 3333333 >> 01.txt:命令的成功結果追加 指定檔案的後面

cat 不存在的目錄 &>> error.log:命令的失敗結果追加 指定檔案的後面

8.3&& 和 ||

實現:

第一步: 如果建立目錄成功,就提示建立成功
命令作用
命令1 && 命令2 如果 命令1執行成功了, 才執行 命令2

mkdir -p 正確目錄 && echo "提示建立目錄成功"

第二步: 如果建立目錄失敗, 就提示建立失敗
命令作用
命令1 || 命令2 如果 命令1 執行失敗了, 才執行 命令2
(cd a1/b1/c1 || mkdir -p a1/b1/c1) && cd a1/b1/d1

8.4 軟連結(類似與 快捷方式)

目標:

因為 某些檔案和目錄 的 路徑很深, 所以 需要增加 軟連結(快捷方式)

實現:

命令英文作用
ln -s 目標檔案絕對路徑 快捷方式路徑 link 給目標檔案增加一個軟連結, 通俗講就是快捷方式