Unix / Linux - 檔案管理

傳介

你好,有志成為程序員的各位!歡迎來到我們的Unix和Linux檔案管理之旅。作為你們親切友善的鄰居電腦老師,我很興奮能夠引導你們進行這個重要的主題。如果你是編程新手,別擔心——我們會從基礎開始,逐步學習。在本教程結束時,你將能夠像專業人士一樣在Linux檔案系統中導航!

Unix / Linux - File Management

Linux中的檔案管理是什麼?

Linux中的檔案管理就像組織你的數字衣櫥。這是關於創建、修改、移動和刪除檔案和目錄的一切。正如你會想要將你的衣服整齊排列一樣,Linux提供了工具來保持你的數字數據有組織且容易訪問。

在我教學的早期日子裡,我曾經有一個學生,他把電腦當作一個凌亂的臥室——到處都是檔案!在我們的檔案管理課程結束時,他變得像圖書館目錄一樣有組織。讓我們確保你也在同樣的道路上!

Linux檔案系統的階層結構

Linux以樹狀結構組織檔案,從根目錄(/)開始。把它想像成一棵倒置的樹,根在頂部,枝條(子目錄)向下生長。

以下是一個簡化的Linux檔案系統視圖:

/
├── home
│   └── username
├── etc
├── var
├── usr
└── tmp

這些目錄各有特定的用途。例如,/home 是存儲用戶個人檔案的地方,而 /etc 包含系統配置檔案。

Linux中的檔案類型

在Linux中,一切皆為檔案!是的,你沒有聽錯。甚至設備也被表示為檔案。這個概念起初可能會讓人感到陌生,但它正是Linux如此強大和靈活的部分原因。

常規檔案

這些是你的日常檔案——文本文件、圖像、視頻等。它們包含數據,是你將要處理的最常見的檔案類型。

目錄

目錄是包含其他檔案和目錄的特殊檔案。它們就像文件櫃中的文件夹。

链接

链接就像Windows中的快捷方式。它們指向其他檔案或目錄。

  • 符號链接(软链接):可以把這些想像成可以指向不同文件系統上的檔案或目錄的快捷方式。
  • 硬链接:這些更像是同一檔案的額外名稱。

設備檔案

記得我說過Linux中的一切都是檔案嗎?設備檔案代表硬體設備。它們通常在 /dev 目錄中找到。

命名管道和套接字

這些是用於進程間通信的特殊檔案。現在不必過於擔心這些——它們是稍後我們將會涵蓋的進階概念。

Linux中的檔案管理命令

現在,讓我們動手實踐一些實用的命令。我總是告訴我的學生,“實踐是學習的最好方式!”所以,打開你的終端,讓我們一起來看看!

列出檔案和目錄

ls 命令是用於列出檔案和目錄的。

ls
ls -l   # 長格式,更詳細的信息
ls -a   # 顯示隱藏檔案
ls -lh  # 人性化文件大小

例如,ls -l 的輸出可能是:

總計 32
drwxr-xr-x 2 user group 4096 Jan 1 12:00 Documents
-rw-r--r-- 1 user group 8192 Jan 2 15:30 myfile.txt

這顯示了每個檔案/目錄的權限、擁有者、群組、大小、最後修改日期和名稱。

創建目錄

使用 mkdir 創建新目錄:

mkdir my_new_directory
mkdir -p parent/child/grandchild  # 創建嵌套目錄

改變目錄

使用 cd 在檔案系統中導航:

cd /home/username
cd ..          # 向上移動一個層次
cd ~           # 前往家目錄

複製檔案和目錄

cp 命令用於複製:

cp source.txt destination.txt
cp -r source_dir destination_dir  # 逐層複製目錄

移動和重命名檔案

使用 mv 遷移和重命名:

mv oldname.txt newname.txt  # 重命名
mv file.txt /home/user/Documents/  # 遷移

刪除檔案和目錄

謹慎使用以下命令——終端中沒有回收站!

rm file.txt
rm -r directory  # 刪除目錄及其內容

查看檔案內容

有几种方法可以查看檔案內容:

cat file.txt     # 顯示整個檔案
less file.txt    # 頁面式查看檔案
head -n 5 file.txt  # 顯示前5行
tail -n 5 file.txt  # 顯示後5行

查找檔案

find 命令用於定位檔案:

find /home -name "*.txt"  # 在 /home 中查找所有 .txt 檔案

檔案權限

理解和管理工作權限在Linux中至關重要。讓我們來分析一下:

ls -l file.txt
# 輸出: -rw-r--r-- 1 user group 1234 Jan 1 12:00 file.txt

權限由 -rw-r--r-- 表示:

  • 第一個字符:檔案類型(- 表示常規檔案,d 表示目錄)
  • 接下來三個字符:擁有者權限(讀、寫、執行)
  • 接下來三個:群組權限
  • 最後三個:其他人的權限

要更改權限,使用 chmod

chmod 644 file.txt  # 設置 rw-r--r-- 權限
chmod u+x file.txt  # 為擁有者添加執行權限

以下是常用的 chmod 數字值:

數字值 權限 符號表示
0 無權限 ---
1 執行 --x
2 -w-
3 寫 + 執行 -wx
4 r--
5 讀 + 執行 r-x
6 讀 + 寫 rw-
7 完全權限 rwx

結論

恭喜你!你剛剛踏出了進入Linux檔案管理世界的第一步。記住,熟能生巧。我總是告訴我的學生,要設定一個虚拟机或使用Linux实时USB來實驗,不用擔心會弄壞任何東西。

在你繼續你的Linux之旅時,你會發現這些檔案管理技能是進行更高级操作的基礎。繼續探索,繼續提問,最重要的是,享受其中的樂趣!

下次,我們將深入探讨更高级的話題,如shell腚本和進程管理。在那之前,祝你檔案管理愉快!

Credits: Image by storyset