最近看到Android或者Linux中,有很多-rwx-wx-wx這樣的東西,知道是對文件的權限描述,但是又不是很仔細的瞭解,通過網絡查詢,就通過自己的語言,寫下來吧。
Linux把文件的權限劃分爲讀(r)、寫(w)、執行(x)三種,每一個文件又有三組r、w、x權限,分別對應文件所屬者rwx權限,文件所屬者所在用戶組的rwx權限,和除了文件所屬者和文件所屬者所在用戶組的其他所有用戶。
使用 ls –l命令可以查看文件或文件夾的權限。例如,一個文件的權限爲 –rwxr-xr--,該如何理解呢?其實整個權限描述字符串一共10個字符。第一個字符代表類型,“-”表示文件,所以這裏指的是一個文件的權限,接下來的3個字符“rwx”就代表了對於該文件的所屬用戶對這個文件有r(讀),w(寫),x(執行)的權限,再接下來的3個“r-x”,就代表對於該文件所屬用戶所在的用戶組對該文件有r(讀),x(執行)的權限,而沒有w(寫)的權限,沒有對應的權限就在對應位用“-”代替。再接下來的3位“-w”,就代表除了該文件的所屬用戶及所屬用戶所在的用戶組的其他所有用戶對該文件有r(讀)權限,沒有w(寫)和x(執行)的權限。用數字代表就是754.
下面來總結一下權限字符的規則:
l 一共10位,第一位表示類型,“-”表示文件,“d”表示文件夾
l 第2位到第4位,表示該文件或文件夾所屬用戶的它擁有的權限,順序是rwx,如果哪個權限沒有,在其位上用“-”代替。
l 第5到第7位,表示該文件或文件夾所屬用戶所在的用戶組對它擁有的權限,順序是rwx,如果哪個權限沒有,在其位上用“-”代替。
l 第8到底10位,表示該文件或文件夾除了其所屬用戶和所屬用戶所在用戶組的其他所喲用戶對其擁有的權限,順序是rwx,如果哪個權限沒有,在其位上用“-”代替。
l 如果用數字表示,r=4 w=2 x=1 對於每一部分,總和最大爲7.如果不好記,可以這樣記,rwx,r位是2的2次方=4,w位是2的一次方=2,x位是2的0次方=1。
是不是已經知道這些權限的意思了?