如何在Linux系統中檢查檔案的許可權是否小於乙個值

2022-06-18 18:54:08 字數 1176 閱讀 9394

我編寫了乙個shell函式,使用這個函式需要傳兩個引數:檔案絕對路徑和乙個三位整數。通過這個函式可以檢查檔案許可權是否小於等於你給定的值。

submod()'`

chnum=`echo $realmod|sed y/rwx-/4210/`

export user=0

export group=0

export other=0

for(( u=2;u<=4;u++))

donumu=`echo $chnum|cut -c $u`

user=`expr $user +$numu`

done

for(( g=5;g<=7;g++))

donumg=`echo $chnum|cut -c $g`

group=`expr $group +$numg`

done

for(( o=8;o<=10;o++))

donumo=`echo $chnum|cut -c $o`

other=`expr $other +$numo`

done

modnum="

$user

""$group

""$other

"if [ $modnum -gt $maxmod ]

then

echo

"error,file's authority is beyond limit!

"else

echo

"checking passed"fi

}

使用該函式的格式:submod 檔案絕對路徑 三位整數。比如:

submod /etc/passwd

755submod /bin/temp 100

原理:使用函式傳入的絕對路徑和三位整數分別會被變數filepath和maxmod接收,ls命令檢視filepath的檔案資訊,再以空格為分隔符找到第一條資訊,即許可權(類似於-rw-r--r--的形式)將這條許可權用變數realmod接收。然後將許可權中的r、w、x、-、分別替換成4、2、1、0(變成了類似0420400400的形式)。最後從第二位開始每三個加起來分別對應擁有者、同組使用者、其他使用者的許可權(類似4+2+0、4+0+0、4+0+0)。將三組計算結果拼接成三位數(644)。將最後將轉化的三位數與實際要求的三位數比較。實際》要求則輸出error,反之通過。

如何在python中檢查檔案大小?

我在windows中編寫python指令碼。我想根據檔案大小做一些事情。例如,如果大小大於0,我將向某人傳送電子郵件,否則繼續其他操作。如何檢查檔案大小?其他答案適用於實際檔案,但是如果您需要適用於 類檔案的物件 的檔案,請嘗試以下操作 f is a file like object.f.seek ...

如何在Linux上實現檔案系統的自動檢查和修復?

平常linux管理方面最重要的任務之一就是,檢查檔案系統的完整性。linux檔案系統有可能在各種各樣的情況下受到損壞,比如系統崩潰 突然斷電 磁碟斷開,或者檔案節點 i node 不小心被覆蓋等等。因此,定期檢查檔案系統的完整性是個好主意,以便盡量減小檔案系統受到損壞的風險。而說到檢查和修復linu...

如何在linux系統之間共享檔案

但是我們想在linux系統之間共享檔案,這就需要使用nfs服務。1.首先檢視linux有沒有安裝nfs 系統已經預設安裝好了 2.啟動nfs伺服器 3.檢視nfs伺服器執行狀態 4.設定nfs自啟動,不然要共享檔案每次都要啟動一下服務很麻煩 5.接下來就是要共享檔案,比如共享 home share ...