前言
在 Mac 系統(tǒng)的終端上修改文件權(quán)限使用的是 Linux 中的 chmod 命令。本文將給大家介紹Unix、Linux下文件和權(quán)限。下面話不多說了,來一起看看詳細的介紹吧
舉例
# 我們先創(chuàng)建一個測試目錄
$ mkdir test && cd test
# 創(chuàng)建一個main.txt文件并寫入一些內(nèi)容
$ echo hello world >> text.txt
# 再創(chuàng)建一個空目錄
$ mkdir js
# 查看信息
$ ls -l
total 8
drwxr-xr-x 2 frank staff 64 7 12 20:03 js # 這行就是js目錄的信息
-rw-r--r-- 1 frank staff 13 7 12 19:52 main.txt # 這行是main.txt的信息
如上所示,文件和目錄都具有如下信息:
# 權(quán)限信息通用格式:
-rwxr-xr-x number user group filesize updatetime filename
通用格式共分成7部分,分別是:
1、文件屬性,表示文件的類型是讀/寫/可執(zhí)行等權(quán)限,共10個字符;
- 第一個字符表示類型,后面9個字符分3組,表示該文件相對于當(dāng)前用戶(user)、當(dāng)前用戶所在的組(group)和其他用戶(other)的讀/寫/可執(zhí)行權(quán)限。
- rwx:代表權(quán)限,-代表無權(quán)限,r代表read具有可讀權(quán)限;w代表write具有可寫權(quán)限;x代表execute具有可執(zhí)行權(quán)限
- 拿上面的main.txt舉例,第一個字符是-,表示是文件類型;而js目錄第一個字符是d,表示directory目錄
- 接下來的3個字符是rw-,表示該文件對于當(dāng)前用戶的權(quán)限是可讀可寫,但是不能執(zhí)行
- 再接下來的3個字符是r--,表示該文件對于當(dāng)前用戶所在的組的成員來說,只有只讀權(quán)限,寫和可執(zhí)行都是沒有權(quán)限的
- 最后的3個字符也是r--,表示該文件對于其他用戶來說也是只能讀,不能寫和執(zhí)行
2、number,表示文件inode數(shù)量,inode表示存儲文件原信息的區(qū)域;
3、user, 表示當(dāng)前用戶名
4、group, 表示當(dāng)前用戶所在的用戶組的名字
5、filesize,表示文件的大小,單位是byte
6、updatetime,表示文件的最后修改時間
7、filename,表示文件名
修改文件權(quán)限
main.txt的權(quán)限是-rw-r--r-- 1 frank staff 13 7 12 19:52 main.txt,對其他用戶的權(quán)限是r--,即只能讀不能寫,如果有個需求想讓其他用戶可寫怎么辦?這時候就需要修改main.txt的權(quán)限了,讓其他用戶也能進行寫操作。
# 修改權(quán)限的命令格式
$ [sudo] chmod [<權(quán)限范圍><權(quán)限操作><具體權(quán)限>] [文件或目錄]
1、權(quán)限范圍
- u: user,表示文件或目錄的擁有者
- g: group,表示文件或目錄所屬的組
- o: other,除了文件或目錄擁有者或者所屬組之外的,其他用戶都屬于這個范圍
- a: all,即全部用戶,包含文件或目錄的擁有者、所屬群組和其他用戶
2、權(quán)限操作
- +表示增加權(quán)限
- -表示取消權(quán)限
- =表示唯一設(shè)定權(quán)限
3、具體權(quán)限
- r表示可讀取
- w表示可寫入
- x表示可執(zhí)行
解釋了這么多,現(xiàn)在我們通過命令操作,讓其他用戶對main.txt也有寫的權(quán)限:
# 讓其他用戶具有寫權(quán)限
$ chmod o+w main.txt
# 確認(rèn)
$ ls -l main.txt
-rw-r--rw- 1 frank staff 13 7 12 19:52 main.txt
# 讓所有用戶具有可執(zhí)行權(quán)限,但是不可以修改且不可讀
$ chmod a+x-r-w main.txt
# 再次確認(rèn)
---x--x--x 1 frank staff 13 7 12 19:52 main.txt
總結(jié)
以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,謝謝大家對腳本之家的支持。