#!/bin/bash
# author: Chiweiming
# version: v1
# date: 2024-03-26
<<COMMAND
檢查某個目錄下的所有檔案和目錄,看是否滿足下麵條件:
1)所有檔案許可權為 644
2)所有目錄許可權為 755
3)檔案和目錄所有者為 xxx,所屬組為 xxx
如果不滿足,改成符合要求
注意:不要直接修改許可權,一定要有判斷的過程
COMMAND
cd data
for file in $(find .)
do
f_p=$(stat -c %a "${file}")
f_u=$(stat -c %U "${file}")
f_g=$(stat -c %G "${file}")
if [[ -d ${file} ]]; then
[[ ${f_p} != '755' ]] && chmod 755 "${file}"
else
[[ ${f_p} != '644' ]] && chmod 644 "${file}"
fi
[[ ${f_u} != "chiweiming" ]] && chown chiweiming "${file}"
[[ ${f_g} != "chiweiming" ]] && chown :chiweiming "${file}"
done
shell practice 04
相關文章
- shell practice 06
- shell practice 03
- shell practice 05
- shell practice 07
- Practice
- Linux深入探索04-Bash shellLinux
- airflow practiceAI
- Shell程式設計-04-Shell中變數數值計算程式設計變數
- scientifically practice DP
- 04 shell程式設計之迴圈語句程式設計
- Practice| 流程控制
- Best Practice in Writing
- Shell階段04 shell流程之case語句, 服務啟動停止指令碼(rsync, nginx), shell加鎖機制指令碼Nginx
- 《前端運維》一、Linux基礎--04Shell變數前端運維Linux變數
- “Docker Practice”讀書筆記Docker筆記
- yolov5s ncnn practiceYOLOCNN
- Shell程式設計基礎-04-一鍵安裝和配置程式設計
- Spring Boot In Practice (0):基礎Spring Boot
- css best practice for big team and projectCSSProject
- Oracle 12.2 RAC on Linux Best Practice DocumentationOracleLinux
- A+B for Input-Output Practice (IV) (sdut oj)
- Practice5.1 測試與封裝5.1封裝
- day04 -js04JS
- 04--JS04--進階JS
- 04
- Practice - iOS 專案持續整合實踐(一)iOS
- Practice – iOS 專案持續整合實踐(一)iOS
- Spring Boot In Practice (1):Redis快取實戰Spring BootRedis快取
- webpack-best-practice-最佳實踐-部署生產Web
- HDOJ 1094 A+B for Input-Output Practice (VI)
- Operating Systems: Principles and Practice 2nd ed. Edition
- 04、MSTP
- 04 Pinia
- java 04Java
- Oracle GoldenGate Best Practice - sample parameter files (文件 ID 1321696.1)OracleGo
- 衝刺04
- PEMS04
- 04.Map