1. 程式人生 > 其它 >Linux的基本操作(二)

Linux的基本操作(二)

一、設定別名-alias

1、通過別名機制簡化常用的、比較長的命令

alias+命令別名=‘命令’

“=”兩邊不能有空格

2、舉例

設定myls為ls-alh的別名

3、取消別名

unalias+命令別名

二、統計目錄及檔案空間佔用情況-du

1、統計指定目錄(或檔案)所佔用磁碟空間的大小

du+【選項】+【檔案或目錄】

2、常用選項

選項 說明
-a 統計磁碟空間佔用時包括所有的檔案,而不僅僅只統計目錄
-h 以更人性化的方式(預設以KB計數,但不顯示單位)顯示出統計結果
-s 只統計所佔用空間總的大小,而不是統計每個子目錄、檔案的大小
- -max-depth=n 統計所有小於等於第n層的目錄的總大小

3、統計出/var/log目錄中子目錄的大小

du -h - -max-depth=1/var/log/

可層層篩查

三、建立新目錄-mkdir

1、建立新的空目錄

mkdir+【選項】+目錄位置及名稱

-p 可以一次性建立巢狀多層目錄

2、舉例

  • 在當前目錄下建立名為123的子目錄

mkdir 123

■ 用-p巢狀式,建立目錄 /11,在/11目錄下建立子目錄22,在/11/22目錄下建立子目錄33

四、建立空檔案-touch命令

1、更新檔案的時間標記

2、經常用於建立多個新的空檔案

touch+檔案

3、舉例

建立三個空檔案,檔名分別為aa.txt、bb.txt、cc.txt

五、建立連結檔案-ln

1、為檔案或目錄建立連結檔案,類似於windows系統的快捷方式

2、連結檔案型別

■ 軟連結(又稱為符號連結)

ln +【-s】+ 原始檔或目錄 連結檔案或目標位置

用絕對路徑,以免軟連結移動了找不到原始檔

■ 硬連結

ln + 原始檔或目錄 連結檔案或目標位置

檔案型別 軟連結檔案 硬連結檔案
刪除原始檔後 失效 仍然可用(檔案佔用空間與原始檔相同)
使用範圍 適用於檔案或目錄 僅適用於檔案
儲存位置 與原始檔可在不同的檔案系統中 必須與原始檔在同一個檔案系統(即同一個分割槽)中
與原始檔的關係 相當於快捷方式 相當於給檔案起個別名
inode號碼 inode號碼不同 inode號碼相同
  • 當一個檔案擁有多個硬連結時,對檔案內容修改,會影響到所有檔名;但是刪除一個檔名,不影響別的檔名的訪問。刪除一個檔名,只會使得"硬連結數"減1。

  • 需要注意的是不能對目錄做硬連結。在日常工作中幾乎不會建立檔案的硬連結。

  • 檔案是儲存在硬碟上的,硬碟的最小儲存單位叫做"扇區”(sector),每個扇區儲存512位元組。

  • 一般連續八個扇區組成一個"塊"(block),一個塊是4K大小,是檔案存取的最小單位。作業系統讀取硬碟的時候,是一次性連續讀取多個扇區,即一個塊一個塊的讀取的。

  • 檔案資料包括實際資料與元資訊(類似檔案屬性)。檔案資料儲存在"塊"中,儲存檔案元資訊(比如檔案的建立者、建立日期、檔案大小、檔案許可權等)的區域就叫做inode。因此,一個檔案必須佔用一個inode,並且至少佔用一個 block。

  • 每個inode都有一個號碼,作業系統用inode號碼來識別不同的檔案。Linux系統內部不使用檔名,而使用inode號碼來識別檔案。對於系統來說,檔名只是inode號碼便於識別的別稱,檔名和inode號碼是一一對應關係,每個inode號碼對應一個檔名。

  • 所以,當用戶在Linux系統中試圖訪問一個檔案時,系統會先根據檔名去查詢它對應的inode,看該使用者是否具有訪問這個檔案的許可權。如果有,就指向相對應的資料block。

六、複製檔案或目錄-cp

1、將需要複製的檔案或目錄(源)重建一份,並儲存為新的檔案或目錄

cp+【選項】+原始檔或目錄 目標檔案或目錄

2、cp 的常用選項

-f: 覆蓋目標同名檔案或目錄時不進行提醒,而直接強制複製

-i: 覆蓋目標同名檔案或目錄時提醒使用者確認

-p: 複製時保持原始檔的許可權、屬主及時間標記等屬性不變

-r: 複製目錄時必須使用此選項,表示遞迴複製所有檔案及子目錄

注:複製多個檔案或目錄時,目標位置必須是目錄,且目標目錄必須已存在

cp /etc/host.conf /etc/host.conf.bak
cp host.conf{ ,.bak}

mkdir yum bak
cp -r /etc/yum. repos.d/ /etc/yum.conf yum_bak/

七、刪除檔案或目錄-rm

1、刪除指定的檔案或目錄

rm+【選項】+要刪除的檔案或目錄

2、常用選項

-f: 刪除檔案或目錄時不進行提醒,而直接強制刪除

-i: 刪除檔案或目錄時提醒使用者確認(y表示刪除,n表示不刪除)

-r: 刪除目錄時必須使用此選項,表示遞迴刪除整個目錄樹(應謹慎使用)

注:不要直接刪除系統中已有的目錄或配置檔案,以避免出現意外故障

rm -rf /etc/yum. repos.d/*

刪除目錄下檔案時建議最好先切換到目錄下再執行rm -rf命令
cd /etc/yum.repos.d/
rm -rf ./*

八、移動檔案或目錄-mv

1、將指定的檔案或目錄轉移位置

2、如果目標位置與源位置相同,則相當於執行重新命名操作

mv+【選項】+原始檔或目錄 目錄檔案或目錄

mv命令只能對單個檔案重新命名,但是可使用rename命令批量修改檔名

rename 舊字元 新字元 目標檔案
例: rename jpg gif *.jpg

九、查詢命令檔案存放目錄-which

搜尋範圍由環境變數 PATH 決定(echo $PATH)

which+命令/程式名(預設當找到第一個目標後不再繼續查詢)

which±a+命令/程式名(在所有搜尋路徑中查詢)

十、查詢檔案或目錄-find

1、採用遞迴方式,根據目標的名稱、型別、大小等不同屬性進行精細查詢

find+【查詢範圍】+【查詢條件表示式】

查詢範圍:查詢檔案或子目錄的目錄位置

查詢條件表示式:查詢條件型別

2、常用查詢條件型別

查詢型別 關鍵字 說明
按名稱查詢 -name 根據目標檔案的名稱進行查詢,允許使用“*”及“?”萬用字元
按檔案大小查詢 -size 根據目標檔案的大小進行查詢;一般使用“+”、“-”號設定超過或小於指定的大小作為查詢條件;常用的容量單位包括KB(注意K是小寫)、MB、GB
按檔案屬主查詢 -user 根據檔案是否屬於目標使用者進行查詢
按檔案型別查詢 -type 根據檔案的型別進行查詢;檔案型別包括普通檔案(f)、目錄(d)、塊裝置檔案(b)、字元裝置檔案(c)等;字元裝置檔案(c):按單個字元讀取資料的裝置(鍵盤,滑鼠)

3、各表示式之間使用邏輯運算子

  • “-a” 表示 而且(and)

  • “-o” 表示 或者 (or)

4、find之exec用法

■ -exec引數後面跟的是Linux命令,它是以分號“;”為結束標誌,由於各個系統中分號會有不同的意義,因此在分號前面加上反斜槓轉義符“\”

{}代表前面find查找出來的檔名

■ find命令匹配到了當前目錄下的所有普通檔案,並在-exec選項中使用Is -l命令將它們列出

find ./ -type f -exec ls -l {} \ ;

總結

■ 檢視路徑(pwd)

■ 檢視及切換目錄(cd、ls)

■ 統計目錄及檔案佔用空間情況(du)

■ 建立目錄(mkdir)

■ 建立檔案(touch)

■ 建立連線檔案(ln)

■ 複製、刪除、移動目錄和檔案(cp、rm、mv)

■ 查詢命令檔案存放目錄(which)

■ 查詢檔案或目錄(find)

■ 設定別名(alias)