Chmod 函数

Time Limit: 1000 ms Memory Limit: 65536 KiB

Problem Description

UNIX系统家族里,文件或目录权限的控制分别以读取,写入,执行3种一般权限来区分,再搭配拥有者与所属群组管理权限范围。您可以使用chmod指令去变更文件与目录的权限,设置方式采用文字或数字代号皆可。
权限范围的表示法如下:
uUser,即文件或目录的拥有者。
gGroup,即文件或目录的所属群组。
oOther,除了文件或目录拥有者或所属群组之外,其他用户皆属于这个范围。
aAll,即全部的用户,包含拥有者,所属群组以及其他用户。
有关权限代号的部分,列表于下:
r:读取权限,数字代号为"4"
w:写入权限,数字代号为"2"
x:执行或切换权限,数字代号为"1"
-:不具任何权限,数字代号为"0"
将档案 file1.txt 设为所有人皆可读取 :
chmod ugo+r file1.txt
将档案 file1.txt 设为所有人皆可读取 :
chmod a+r file1.txt
将档案 file1.txt 与 file2.txt 设为该档案拥有者,与其所属同一个群体者可写入,但其他以外的人则不可写入 :
chmod ug+w,o-w file1.txt file2.txt
将 ex1.设定为只有该档案拥有者可以执行 :
chmod u+x ex1

此外,chmod也可以用数字来表示权限如 chmod 777 file
语法为:chmod abc file
其中a,b,c各为一个数字,分别表示UserGroup、及Other的权限。
r=4w=2x=1
若要rwx属性则4+2+1=7
若要rw-属性则4+2=6
若要r-x属性则4+1=5
范例二:
chmod a=rwx file 和 chmod 777 file 效果相同
chmod ug=rwx,o=x file 和 chmod 771 file 效果相同

在系统里有nn<100)个文件文件,它们的权限开始时都不具有任何权限。

Input

 一系列chmod 的命令

Output

 命令所涉及的文件的权限列表,分别表示UserGroup、及Other的权限,文件按名称升序排列后输出。

Sample Input

chmod a+r file1.txt
chmod 761 file2.txt
chmod ug+w,o-w file1.txt file2.txt

Sample Output

file1.txt:rw-rw-r--
file2.txt:rwxrw---x

Hint

 

Source

中国海洋大学第四届朗讯杯初级组