Linux mkdir 建立新目錄

mkdirMake Directory 的縮寫,用來在 Linux 系統中建立新的目錄(也就是資料夾)。

基本用法

mkdir 目錄名稱

範例: 在目前位置建立一個名為 backup 的目錄。

mkdir backup

常用技巧

1. 同時建立多個目錄

你可以一次輸入多個名稱,用空白隔開,這樣就能一次建立好多個目錄。

# 建立 dir1, dir2, dir3 三個目錄
mkdir dir1 dir2 dir3

2. -p:建立多層目錄 (Parents)

這是 mkdir 最重要的參數!

假設你想建立一個結構為 project/src/assets 的目錄。 如果你直接執行 mkdir project/src/assets,若 projectsrc 不存在,系統會報錯:

mkdir: cannot create directory ‘project/src/assets’: No such file or directory

這時加上 -p 參數,它會自動幫你建立所有「路徑中缺少」的父目錄。

# 自動建立中間缺少的 project 和 src 目錄
mkdir -p project/src/assets

這個指令非常安全且好用,即便目錄已經存在,用 -p 也不會報錯,所以寫 Script 時常會預設加上它。

3. -m:建立時指定權限 (Mode)

預設情況下,新目錄的權限取決於系統的 umask 設定。如果你希望在建立時就直接指定權限,可以使用 -m

# 建立一個權限為 700 (只有擁有者可讀寫執行) 的目錄
mkdir -m 700 private_folder

常見錯誤

"File exists"

如果你嘗試建立一個已經存在的目錄,系統會報錯。

mkdir: cannot create directory ‘backup’: File exists

解決方法:

  1. 換個名字。
  2. 或者是你根本不需要再建立了(如果你的目的是確保它存在,可以用 mkdir -p,它不會報錯)。

"Permission denied"

你沒有權限在當前目錄下建立新目錄。 解決方法:

  1. 切換到你有權限的目錄(例如你的家目錄 ~)。
  2. 使用 sudo 提升權限(如果真的需要建立在系統目錄下)。
sudo mkdir /var/www/my-site