一敷钾、描述
- 需求: 將多個(gè)文件拷貝至不同的用戶文件夾下浑娜,并且用戶有對(duì)文件的操作權(quán)限
二有送、代碼詳情
#!/bin/bash
user_ids=(108878 108865 108835 108834) # 聲明用戶id數(shù)組
files=("機(jī)器學(xué)習(xí)案例.zip") # 聲明文件數(shù)組
for item in ${user_ids[@]}
do
for item2 in ${files[@]}
do
if [ ! -d '/mnt/acs_mnt/nas/xiniulab/userdata/'$item'' ]; then # -d 查看 filename 是否為目錄
mkdir '/mnt/acs_mnt/nas/xiniulab/userdata/'$item''
fi
chmod -R ugo+rwx '/mnt/acs_mnt/nas/xiniulab/userdata/'$item'' # 給文件夾設(shè)置權(quán)限
echo $item
cp $item2 '/mnt/acs_mnt/nas/xiniulab/userdata/'$item'/'$item2'' # 拷貝文件
done
done
- 代碼詳解
- 語(yǔ)法格式:
chmod [-vR] mode
文件名
參數(shù)說(shuō)明:
mode
權(quán)限設(shè)置字串,格式為[ugoa] [+-=] [rwx]
u
表示文件的擁有者
g
表示與此文件擁有者屬于一個(gè)組群的人
o
表示其他人
a
表示包含以上三者即文件擁有者(u)焕檬、群組(g)跃赚、其他(o)
+
表示增加權(quán)限
-
表示取消權(quán)限
=
表示唯一設(shè)置權(quán)限
r
表示有讀取的權(quán)限
w
表示有寫(xiě)入的權(quán)限
x
表示有執(zhí)行的權(quán)限
-v
顯示權(quán)限改變的詳細(xì)資料
-R
表示對(duì)當(dāng)前目錄下的所有文件和子目錄進(jìn)行相同的權(quán)限更改
- 文件比較運(yùn)算符
-e filename
如果 filename存在,則為真屯掖,例: [ -e /test ]
-d filename
如果 filename為目錄玄柏,則為真,例: [ -d /test ]
-f filename
如果 filename為常規(guī)文件贴铜,則為真粪摘,例: [ -f /test ]
-L filename
如果 filename為符號(hào)鏈接,則為真绍坝,例: [ -L /test ]
-r filename
如果 filename可讀赶熟,則為真,例: [ -r /test ]
-w filename
如果 filename可寫(xiě)陷嘴,則為真映砖,例: [ -w /test ]
-x filename
如果 filename可執(zhí)行,則為真灾挨,例: [ -x /test ]