linux批量更改檔案所有者

2021-08-07 09:01:00 字數 925 閱讀 3652

剛學完shell指令碼基礎知識,剛才改變資料夾的所有使用者時,突然想到能不能寫個指令碼批量更改,於是就有了這個。

1 #!/bin/bash

2 #ecoding=utf-8

3 4

5 #先過濾出第乙個檔案的所有者,名字賦給str

6 i=1

7 str=$( echo -e  "$(ls -l)\n"| grep ^[^d] | grep ^- | awk '' | sed -n $i'p' )

8 9 #若檔案所有者不為空,則迴圈獲取下乙個檔案所有者,用i累計共有多少檔案

10 while [ -n "$str" ]

11         do

12                 i=$(( $i+1 ))

13                 str=$( echo -e "$(ls -l)\n"|grep ^[^d]|grep ^-|awk ''|sed -n $i'p' )

14         done

15 16 #迴圈獲取檔案的名字,然後將檔案的所有者改為wjc

17 for (( j=1 ; j<$i ; j++ ))

18         do

19                 name=$( echo -e  "$(ls -l)\n"|grep ^[^d]|grep ^-|awk ''|sed -n $j'p' )

20                 chown -r wjc $name

21         done

22 23

24 echo -e "\n使用者已經全部更改為wjc\n"

~

大體思路寫在注釋裡,也還有很多可以改進的地方,可以獲取輸入來更加智慧型的改所有者,對過濾檔名沒有非常嚴謹過濾,不過基本使用應該夠。

linux更改資料夾許可權,更改檔案所有者

更改資料夾許可權命令chmod,有兩種方式 例如chmod a x當想用chmod命令來改變許可權時,檔案的使用者身份主要有如下幾類 使用者所具有的檔案訪問許可權型別如下 檔案許可權配置行為有如下幾類 所以chmod a x是任意使用者都有執行許可權 解釋一下,其實整個命令的形式是 sudo chm...

linux更改檔案 夾 許可權或所有者

這裡簡單介紹一下chmod 你可以用ls l命令檢視當前目錄下所有檔案或資料夾的資訊 ls l drwxr xr x.4 hsowan root 39 sep 10 13 08 software根據這個結果,在這裡先說幾點 1.結果中的4表示第一級子目錄數,包括.所以如果目錄下沒有任何檔案或資料夾的...

chown更改檔案和目錄的所有者

ubuntu下更改檔案或目錄的所有者和群組許可權,使用命令 sudo chown current username location of files or folders chown命令格式 chown option owner group file.常用命令選項 r 遞迴操作當前目錄下的所有目錄...