1. 程式人生 > 實用技巧 >Linux - 其他命令

Linux - 其他命令

其他命令

目標

  • 查詢檔案
    • find
  • 軟連結
    • ln
  • 打包和壓縮
    • tar
  • 軟體安裝
    • apt-get

01. 查詢檔案

  • find命令功能非常強大,通常用來在特定的目錄下搜尋符合條件的檔案
序號命令作用
01 find [路徑] -name "*.py" 查詢指定路徑下副檔名是.py的檔案,包括子目錄
  • 如果省略路徑,表示在當前資料夾下查詢
  • 之前學習的萬用字元,在使用find命令時同時可用
  • 有關find的高階使用,在就業班會講

演練目標

    1. 搜尋桌面目錄下,檔名包含1的檔案
find -name "*1*"
    1. 搜尋桌面目錄下,所有以.txt為副檔名的檔案
find -name "*.txt"
    1. 搜尋桌面目錄下,以數字1開頭的檔案
find -name "1*"

02. 軟連結

序號命令作用
01 ln -s 被連結的原始檔 連結檔案 建立檔案的軟連結,用通俗的方式講類似於Windows 下的快捷方式
  • 注意:
    1. 沒有-s選項建立的是一個硬連結檔案
      • 兩個檔案佔用相同大小的硬碟空間,工作中幾乎不會建立檔案的硬連結
    1. 原始檔要使用絕對路徑,不能使用相對路徑,這樣可以方便移動連結檔案後,仍然能夠正常使用

演練目標

    1. 將桌面目錄下的01.py移動到demo/b/c目錄下
    1. 在桌面目錄下新建01.py的軟連結FirstPython
      • 分別使用相對路徑和絕對路徑建立FirstPython的軟連結
    1. FirstPython移動到demo目錄下,對比使用相對路徑和絕對路徑的區別

硬連結簡介(知道)

  • 在使用ln建立連結時,如果沒有-s選項,會建立一個硬連結,而不是軟連結

硬連結演練

    1. ~/Desktop/demo目錄下建立~/Desktop/demo/b/c/01.py的硬連結01_hard
    1. 使用ls -l檢視檔案的硬連結數(硬連結——有多少種方式可以訪問檔案或者目錄)
    1. 刪除~/Desktop/demo/b/c/01.py,並且使用tree來確認demo目錄下的三個連結檔案

檔案軟硬連結的示意圖

在 Linux 中,檔名和檔案的資料是分開儲存的

  • 提示:
    • 在 Linux 中,只有檔案的硬連結數 == 0才會被刪除
    • 使用ls -l可以檢視一個檔案的硬連結的數量
    • 在日常工作中,幾乎不會建立檔案的硬連結,知道即可

03. 打包壓縮

  • 打包壓縮是日常工作中備份檔案的一種方式
  • 在不同作業系統中,常用的打包壓縮方式是不同的
    • Windows常用rar
    • Mac常用zip
    • Linux常用tar.gz

3.1 打包 / 解包

  • tar是 Linux 中最常用的備份工具,此命令可以把一系列檔案打包到一個大檔案中,也可以把一個打包的大檔案恢復成一系列檔案
  • tar的命令格式如下:
# 打包檔案
tar -cvf 打包檔案.tar 被打包的檔案/路徑...

# 解包檔案
tar -xvf 打包檔案.tar
  • tar選項說明
選項含義
c 生成檔案檔案,建立打包檔案
x 解開檔案檔案
v 列出歸檔解檔的詳細過程,顯示進度
f 指定檔案檔名稱,f 後面一定是 .tar 檔案,所以必須放選項最後

注意:f選項必須放在最後,其他選項順序可以隨意

打包解包演練

  1. 刪除桌面下的所有內容
  2. 在桌面下新建三個空白檔案01.py02.py03.py
  3. 將這三個檔案打一個py.tar的包
  4. 新建tar目錄,並且將py.tar移動到tar目錄下
  5. 解包py.tar

3.2 壓縮/解壓縮

1)gzip

  • targzip命令結合可以使用實現檔案打包和壓縮
    • tar只負責打包檔案,但不壓縮
    • gzip壓縮tar打包後的檔案,其副檔名一般用xxx.tar.gz

Linux中,最常見的壓縮檔案格式就是xxx.tar.gz

  • tar命令中有一個選項-z可以呼叫gzip,從而可以方便的實現壓縮和解壓縮的功能

  • 命令格式如下:

# 壓縮檔案
tar -zcvf 打包檔案.tar.gz 被壓縮的檔案/路徑...

# 解壓縮檔案
tar -zxvf 打包檔案.tar.gz

# 解壓縮到指定路徑
tar -zxvf 打包檔案.tar.gz -C 目標路徑
選項含義
-C 解壓縮到指定目錄,注意:要解壓縮的目錄必須存在

2)bzip2(two)

  • tarbzip2命令結合可以使用實現檔案打包和壓縮(用法和gzip一樣)

    • tar只負責打包檔案,但不壓縮,
    • bzip2壓縮tar打包後的檔案,其副檔名一般用xxx.tar.bz2
  • tar命令中有一個選項-j可以呼叫bzip2,從而可以方便的實現壓縮和解壓縮的功能

  • 命令格式如下:

# 壓縮檔案
tar -jcvf 打包檔案.tar.bz2 被壓縮的檔案/路徑...

# 解壓縮檔案
tar -jxvf 打包檔案.tar.bz2

04. 軟體安裝

4.1 通過 apt 安裝/解除安裝軟體

  • apt 是Advanced Packaging Tool,是 Linux 下的一款安裝包管理工具
  • 可以在終端中方便的安裝/解除安裝/更新軟體包
# 1. 安裝軟體
$ sudo apt install 軟體包

# 2. 解除安裝軟體
$ sudo apt remove 軟體名

# 3. 更新已安裝的包
$ sudo apt upgrade

安裝演練

# 一個小火車提示
$ sudo apt install sl

# 一個比較漂亮的檢視當前程序排名的軟體
$ sudo apt install htop

4.2 配置軟體源

  • 如果希望在ubuntu中安裝軟體,更加快速,可以通過設定映象源,選擇一個訪問網速更快的伺服器,來提供軟體下載/安裝服務
  • 提示:更換伺服器之後,需要一個相對比較長時間的更新過程,需要耐心等待。更新完成後,再安裝軟體都會從新設定的伺服器下載軟體了

所謂映象源,就是所有伺服器的內容是相同的(映象),但是根據所在位置不同,國內伺服器通常速度會更快一些!

——本文源自《黑馬程式設計師》