chmod [可選項(xiàng)] <mode> <file...>
可選項(xiàng):
-c, --changes like verbose but report only when a change is made (若該檔案權(quán)限確實(shí)已經(jīng)更改,才顯示其更改動(dòng)作)
-f, --silent, --quiet suppress most error messages (若該檔案權(quán)限無(wú)法被更改也不要顯示錯(cuò)誤訊息)
-v, --verbose output a diagnostic for every file processed(顯示權(quán)限變更的詳細(xì)資料)
--no-preserve-root do not treat '/' specially (the default)
--preserve-root fail to operate recursively on '/'
--reference=RFILE use RFILE's mode instead of MODE values
-R, --recursive change files and directories recursively (以遞歸的方式對(duì)目前目錄下的所有檔案與子目錄進(jìn)行相同的權(quán)限變更)
--help 顯示此幫助信息
--version 顯示版本信息
mode :權(quán)限設(shè)定字串,詳細(xì)格式如下:
[ugoa...][[+-=][rwxX]...][,...],其中
[ugoa...]
u 表示該檔案的擁有者,g 表示與該檔案的擁有者屬于同一個(gè)群體(group)者,o 表示其他以外的人,a 表示所有(包含上面三者)。
[+-=]
+ 表示增加權(quán)限,- 表示取消權(quán)限,= 表示唯一設(shè)定權(quán)限。
[rwxX]
r 表示可讀取,w 表示可寫入,x 表示可執(zhí)行,X 表示只有當(dāng)該檔案是個(gè)子目錄或者該檔案已經(jīng)被設(shè)定過(guò)為可執(zhí)行。
file...
文件列表(單個(gè)或者多個(gè)文件、文件夾)
范例:
chmod ugo+r a.sh
或
chmod a+r a.conf
chmod u+rwx c.sh
chmod a+r,ug+w,o-w a.conf b.xml
chmod -R a+rw *
在這種使用方式中,首先我們需要了解數(shù)字如何表示權(quán)限。 首先,我們規(guī)定 數(shù)字 4 、2 和 1表示讀、寫、執(zhí)行權(quán)限(具體原因可見(jiàn)下節(jié)權(quán)限詳解內(nèi)容),即 r=4,w=2,x=1 。此時(shí)其他的權(quán)限組合也可以用其他的八進(jìn)制數(shù)字表示出來(lái),如: rwx = 4 + 2 + 1 = 7 rw = 4 + 2 = 6 rx = 4 +1 = 5 即
若要同時(shí)設(shè)置 rwx (可讀寫運(yùn)行) 權(quán)限則將該權(quán)限位 設(shè)置 為 4 + 2 + 1 = 7 若要同時(shí)設(shè)置 rw- (可讀寫不可運(yùn)行)權(quán)限則將該權(quán)限位 設(shè)置 為 4 + 2 = 6 若要同時(shí)設(shè)置 r-x (可讀可運(yùn)行不可寫)權(quán)限則將該權(quán)限位 設(shè)置 為 4 +1 = 5
上面我們提到,每個(gè)文件都可以針對(duì)三個(gè)粒度,設(shè)置不同的rwx(讀寫執(zhí)行)權(quán)限。即我們可以用用三個(gè)8進(jìn)制數(shù)字分別表示 擁有者 、群組 、其它組( u、 g 、o)的權(quán)限詳情,并用chmod直接加三個(gè)8進(jìn)制數(shù)字的方式直接改變文件權(quán)限。語(yǔ)法格式為 :
chmod <abc> file...
其中
a,b,c各為一個(gè)數(shù)字,分別代表User、Group、及Other的權(quán)限。
相當(dāng)于簡(jiǎn)化版的
chmod u=權(quán)限,g=權(quán)限,o=權(quán)限 file...
而此處的權(quán)限將用8進(jìn)制的數(shù)字來(lái)表示User、Group、及Other的讀、寫、執(zhí)行權(quán)限
上一個(gè)教程:Linux 命令行 / cecdns.com