大資料Hadoop入門教程 | (二)Linux

語言: CN / TW / HK

使用 finalShell 可以提供檔案目錄圖形化

完整 Linux命令整理 也可以參考大佬部落格: Linux常見檔案管理命令 - Mr_Walker - 部落格園

Linux檔案系統基礎知識

Linux檔案系統概念

  • 作業系統中負責 管理和儲存檔案 資訊的軟體機構稱為檔案管理系統,簡稱檔案系統;
  • 檔案系統的結構通常叫做 目錄樹結構 ,從 斜槓/根目錄 開始;
  • Linux號稱“ 萬物皆檔案 ”,意味著針對Linux的操作,大多數時間是在針對Linux2檔案系統操作。

檔案系統通用特性

  • 幾乎主流的檔案系統都是從 /根目錄 開始的,Liux也不例外,而windows檔案系統會以碟符來區分不同檔案系統;
  • 目錄樹中節點分為兩個種類: 目錄(directory)檔案(file) ;
  • 從根目錄開始, 路徑具有唯一性
  • 只有在目錄下才可以繼續建立下一級目錄,換句話說目錄樹到檔案終止蔓延。

易混概念

  • 當前路徑:也叫當前工作目錄,當下使用者所屬的位置;
  • 相對路徑:相對當前工作目錄開始的路徑, 會隨當前路徑變化而變化
  • 絕對路徑:不管工作目錄在哪, 絕對路徑都是從/根目錄開始 ,唯一不重複。

特殊符號

. :目錄或者檔名字以 . 開始表示是 隱藏的檔案 (夾),如果路徑以 . 開始表示 當前路徑

.. :當前目錄的 上一級目錄

~ :當前使用者的home目錄,比如root使用者home目錄是/root

/ :根目錄

#進入當麗月錄下的a目錄
cd ./a 
#進入根目錄下的a目錄
cd /a 
#進入當前日錄上一級目錄下的a目錄
cd ./a
#進入當前操作使用者home目錄下的a目錄
cd ~/a
#進入當前目錄下的a資料夾 a是隱藏的
cd .a

Linux常用檔案操作命令

概述

  • 命令屬於死東西,屬於 多用多會不用就忘 的知識,孰能生巧;
  • Tab鍵 可以實現 自動補全 和提示,要合理使用;
  • history 命令可以顯示歷史執行記錄,或者使用 方向鍵 來切換 前後執行過的命令

顯示目錄內容

ls ( list files)命令:用於 顯示指定工作目錄下之內容 (列出目前工作目錄所含之檔案及子目錄)。

-a 顯示所有檔案及目錄( . 開頭的隱藏檔案也會列出)

-l 除檔名稱外,亦將檔案型態、許可權、擁有者、檔案大小等資訊詳細列出注意 ls -l=ll

ls path 
ls -a path #檢視所有檔案包括隱藏檔案
ls -l=ll #檢視檔案詳細資訊包括許可權型別時間大小等
ll -h path #表示以人性化的顯示內容
ll * #*萬用字元表示任意字元?表示有且只有一個字元

切換目錄

cd (change directory)命令:用於切換當前工作目錄。切換的路徑可為絕對路徑或相對路徑。若路徑省略,則變換至使用者的home目錄。

~ :也表示為home目錄的意思

. :則是表示目前所在的目錄

.. :則表示目前目錄位置的上一層目錄

pwd #檢視自己當前所在目錄
cd path注意自己寫的是相對還是絕對的還可以結合特殊符號使用
cd ./
cd /
cd ./
cd ~

建立、刪除

  • mkdir (make directory)命令:用於 建立目錄
    • -p 確保父目錄名稱存在,不存在的就建一個。
  • touch 命令: 建立 一個 空檔案 ,無任何內容。
  • rm (remove)命令:用於 刪除 一個檔案或者目錄。
    -f
    -r
    
mkdir /a/b/c 
mkdir -p /a/b/c 
rm -rf /a/b/c 
rm -rf /a 
-f #強制刪除 不給與提示
-r #遞迴刪除 針對資料夾
-rf #殺傷力極大 問問自己在幹什麼
rm -rf /* #坐牢眼:

複製、移動

  • cp (copy file)命令:用於 複製 檔案或目錄。
    • -r :若給出的原始檔是一個目錄檔案,此時將複製該目錄下所有的子目錄和檔案。
  • mv (move fi1e)命令:用來為檔案或目錄 改名 、或將檔案或目錄 移入 其它位置。
cp [options]source...directory 
mv source_file(檔案) dest_file(檔案)#將原始檔名source_file改為目標檔名dest file
mv source_fle(檔案) dest_directory(目錄)#將檔案source_file移動到目標目錄destdirectory中
mv source_directory(目錄) dest_directory(目錄)#目錄名destdirectory已存在,將source_directory移動到目錄名destdirectory中;目錄名destdirectory不存在則source directory改名為目天名dest directony 
mv source_directory(目錄) dest_file檔案)#出錯

檔案內容檢視

  • cat (concatenate)命令:用於連線檔案並列印到標準輸出裝置如console控制檯上。適合 小檔案 內容檢視。
  • more 命令:類似cat,不過會以一頁一頁的形式顯示,更方便使用者 逐頁 閱讀,翻頁結束自動退出。適合大檔案檢視。按space鍵翻下一頁,按b往回(back)上一頁
  • tail 命令:用於檢視檔案的 結尾部分 的內容。
    • -n 用於顯示行數,預設為10,即顯示10行的內容。
    • -f 用於實時 顯示檔案動態追加的內容 。會把檔案裡的最尾部的內容顯示在螢幕上,並且不斷重新整理,只要檔案有更新,就可以看到最新的檔案內容。

其他

echo 命令:用於內容的輸出,將 內容輸出 到console控制檯上。

echo string

| 管道命令:將前一個命令執行的結果作為內容交給下一個命令處理。可以形成多級管道操作。

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

> 輸出重定向( 覆蓋 )命令command>file執行command然後將輸出的內容存入file,file內已經存在的內容將 被新內容覆蓋替代

>> 輸出重定向( 追加 )命令command>)file執行command然後將輸出的內容存入file,新內容追加在檔案末尾。

echo 711>4.txt 
cat 4.txt
#111
echo 222>4.txt
cat 4.txt 
#222
echo 333>>4.txt 
cat 4.txt 
#222333

解壓縮命令

(1/2)打包、解包

tar (tape archive)命令:常用於備份檔案。是用來建立, 還原備份檔案的工具程式 ,它可以加入,解開備份檔案內的檔案。

-c 或--create建立新的備份檔案。

-x 或--extract或--get從備份檔案中還原檔案。

-v 或--verbose顯示指令執行過程。

-f <備份檔案>或--file=<備份檔案>指定備份檔案。

(2/2)打包壓縮、解包解壓縮

在打包備份或者解包的過程中,可以通過 指定壓縮演算法 ,對打包的檔案進行壓縮,解壓的時候也需要指定相應的演算法。

-z 或--gzip或--ungzip通過 gzip 指令處理備份檔案。

最重要的搭配: tar -zxvf xxxxx.tar.gz

Linux常用系統命令

時間、日期檢視

date
cal

記憶體、磁碟使用率檢視

free
df
-h

程序檢視

  • ps (英文全拼:process status)命令:用於顯示當前程序的狀態,類似於windows的工作管理員。
  • jps 命令:這是JDK自帶的命令,專門用於檢視本機執行的 java程序 情況。

Vim編輯器

vim編輯器簡介

  • vi是一款很多uix及其延
  • 伸系統內建的 文字編輯器 ,具有強大的文字編輯能力。
  • vim是從vi發展出來的一個文字編輯器,可以理解為 vi編輯器的增強版 。vim中程式碼補完、編譯及錯誤跳轉等方便程式設計的功能特別豐富。
  • vi/vim編輯器的核心設計思想:讓程式設計師的手指始終保持在鍵盤的核心區域,就能完成所有的編輯操作。
  • 學習使用vi/vim編輯器最大挑戰: 萬物皆命令

開啟與新建檔案

vim /path/file
  • 如果開啟的檔案不存在,此時就是新建檔案,編輯器左下角會提示new file
  • 如果檔案已經存在,此時就開啟這個檔案,進入命令模式

在使用vi編輯器的過程中,如果發現開啟的檔案內容不符合預期,可以檢查一下,檔案路徑是否正確?

vim編輯器3種工作模式

  • 命令模式(Command mode)
    • 命令模式下,所敲的按鍵編輯器都理解為命令,以命令驅動執行不同的功能。
    • 此模式下,不能自由進行文字編輯。
  • 輸入模式(Insert mode)
    • 也就是所謂的編輯模式、插入模式。
    • 此模式下,才可以對檔案內容進行自由編輯
  • 底線命令模式(Last line mode)
    • : 開始,通常用於檔案的儲存、退出。

vim基本操作命令

游標移動

  • 方向鍵控制移動
  • 翻頁 pageup pagedown
  • 行首( home0 )行尾( end$ )
  • 跳到檔案的最後一行 G
  • 到檔案的第一行 gg

複製貼上

  • 複製
    yy
    nyy
    
  • 貼上
    p
    P
    
  • 注意:使用滑鼠從window或者其他地方複製內容到vim編輯器貼上, 一定一定要在輸入模式下進行,否則資料會有丟失的風險

刪除、撤銷操作

  • 刪除命令
    dd
    ndd
    
  • 撤銷、反撤銷
    u
    ctrl+r