天天看點

在mac 檢視、修改檔案權限的指令

1、檢視檔案/檔案夾權限:

1、檢視某個檔案權限的指令

ls -l + 要檢視檔案的檔案名
           

2、檢視某個檔案夾裡所有檔案/檔案夾的權限

ls -l + 檔案夾名
           

3、如果要檢視某個檔案夾的權限,需要在該檔案夾外部目錄下執行

來列印所有檔案/檔案夾權限,而無法單獨檢視某個檔案夾的權限 

  • 下面舉例說明

我們在桌面上建一個檔案夾,名字叫chmod_test,裡面放1個檔案和一個檔案夾:111.txt檔案和test檔案夾,如圖: 

在mac 檢視、修改檔案權限的指令

1、檢視111.txt檔案的權限: 

用終端進入chmod_test檔案夾,執行

ls -l 111.txt

,就會列印出111.txt的權限資訊,如下圖: 

在mac 檢視、修改檔案權限的指令

下面這行資訊,就是111.txt的權限資訊,至于是什麼意思,後面會說

2、再來看看test檔案夾的權限: 

因為無法單獨檢視檔案夾權限,要檢視test檔案的權限就隻能在其父目錄,即chmod_test這個檔案夾裡執行檢視指令:

ls -l

,就會列印出chmod_test目錄裡所有檔案、檔案夾的權限資訊,如圖: 

在mac 檢視、修改檔案權限的指令

下面這行資訊,就是test檔案夾的權限資訊

drwxr-xr-x   xuye  staff      : test
           
  • 好,指令和例子都看過了,下面講講如何根據列印的資訊了解檔案權限:
權限資訊通用格式:
-rwxr-xr-x number user group filesize updatetime filename
           

可以看到通用格式分成了7部分,分别是: 

1、檔案屬性,即檔案的類型/讀/寫/執行等權限,共10個字元。

  • 第一個字元表示類型,後9個字元分3組,表示該檔案對于目前使用者(user)、目前使用者所在組(group)、其他使用者(other)的讀/寫/執行權限。
  • rwx:代表屬主權限,-代表無權限;r代表具有可讀權限; w代表具有可寫權限;x代表具有可執行權限

拿111.txt檔案舉例:

第一個字元是

-

,表示類型,通常檔案都是

-

。當然還有其他類型,比如

d

表示目錄等。

接下來3個字元是

rw-

,表示該檔案對于目前使用者的權限是r/w,即目前使用者能對111.txt讀、寫,但是不能執行,是以執行權限塊是

-

,表示沒有執行權限。

再接下來3個字元是

r--

,表示該檔案對于目前使用者所在的組的成員來說,隻能執行讀,寫和執行都是無權限的。

最後3個字元是

r--

,表示該檔案對于其他使用者來說也是隻能讀,不能寫和執行。

【ps】111.txt檔案10個字元

-rw-r--r--@

最後面還有個

@

,這個其實是mac系統的檔案自帶的一個表示檔案有擴充屬性的标示,與權限無關。 

2、number,即檔案inode數量,inode表示儲存檔案元資訊的區域

可見111.txt的inode值是1 

3、user,即目前使用者名

可見111.txt的目前目前使用者名是xuye 

4、group,即目前使用者所在的組的名字

可見111.txt的目前使用者所在的組是staff組 

5、filesize,即該檔案大小,機關是byte

111.txt由于是空的,是以大小是0byte 

6、updatetime,即檔案的最後修改時間

可見111.txt的最後修改時間是4 13 17:45,即4月13号17:45 

7、filename,即檔案名

111.txt的檔案名自然就是111.txt 

2、修改檔案的權限

111.txt檔案的其他使用者權限是

r--

,即隻能讀不能寫,那其他使用者想寫怎麼辦,就得修改111.txt檔案的權限,讓其他使用者也能寫。

修改權限的指令格式 

chmod [<權限範圍><權限操作><具體權限>] [檔案或目錄…]

<權限範圍> 

u:User,即檔案或目錄的擁有者。 

g:Group,即檔案或目錄的所屬群組。 

o:Other,除了檔案或目錄擁有者或所屬群組之外,其他使用者皆屬于這個範圍。 

a:All,即全部的使用者,包含擁有者,所屬群組以及其他使用者。

<權限操作> 

+:表示增權重限 

- :表示取消權限 

=:表示唯一設定權限

<具體權限> 

r:表示可讀取 

w:表示可寫入 

x :表示可執行

好,現在讓其他使用者都可以對111.txt檔案有寫的權限,則執行

chmod o+w .txt
           

過程如圖: 

在mac 檢視、修改檔案權限的指令

再使用

ls -l 111.txt

 檢視檔案權限,發現第三組權限從

r--

變成了

rw-

,确實修改了111.txt對其他使用者的權限,現在其他使用者可以修改111.txt了

那現在我想讓所有使用者都能執行111.txt,但是不可以修改,則執行

chmod a+x-w txt
           

再看一下權限,發現變成了 

-r-xr-xr-x@ 1 xuye staff 0 4 13 17:45 111.txt

所有使用者都不能修改111.txt了。

打開111.txt檔案随便輸入點東西,系統提示我們該檔案已經被鎖定,無法操作,如圖: 

在mac 檢視、修改檔案權限的指令

常用的linux檔案權限:

444 r--r--r-- : 所有使用者都隻有讀權限

600 rw------- : 檔案所有者具有讀、寫權限,其他使用者沒有權限

644 rw-r--r-- : 檔案所有者具有讀寫權限,同組使用者具有讀權限,其他使用者具有讀權限

666 rw-rw-rw- :檔案所有者,同組使用者,其他使用者都具有讀寫權限,沒有執行權限

700 rwx------ : 檔案所有者具有讀寫執行權限,同組使用者其他使用者均沒有任何權限

744 rwxr--r-- : 檔案所有者具有讀寫執行權限,同組使用者和其他使用者隻有讀權限

755 rwxr-xr-x : 檔案所有者具有讀、寫、執行權限,同組使用者和其他使用者具有讀、執行權限

777 rwxrwxrwx : 全部使用者都用全權限

從左至右,1-3位數字代表檔案所有者的權限,4-6位數字代表同組使用者的權限,7-9數字代表其他使用者的權限。

具體的權限是由數字來表示的,讀取的權限等于4,用r表示;寫入的權限等于2,用w表示;執行的權限等于1,用x表示;

通過4、2、1的組合,得到以下幾種權限:0(沒有權限);4(讀取權限);5(4+1 | 讀取+執行);6(4+2 | 讀取+寫入);7(4+2+1 | 讀取+寫入+執行)

以755為例:

1-3位7等于4+2+1,rwx,所有者具有讀取、寫入、執行權限;

4-6位5等于4+1+0,r-x,同組使用者具有讀取、執行權限但沒有寫入權限;

7-9位5,同上,也是r-x,其他使用者具有讀取、執行權限但沒有寫入權限。

rwx權限數字解釋: 

chmod也可以用數字來表示權限

    如 chmod 777 file

繼續閱讀