首页 > 系统相关 >shell practice 04

shell practice 04

时间:2024-04-12 09:05:00浏览次数:24  
标签:bin 03 26 shell 04 practice

#!/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

标签:bin,03,26,shell,04,practice
From: https://www.cnblogs.com/chiweiming/p/18130411

相关文章

  • shell practice 05
    #/bin/bash#autuor:ChiWeiming#version:v1#date:2024-03-27<<COMMAND针对某个目录,该目录下有数百个子目录,比如/data/att/chiweiming/data/att/linux然后再深入一层是以日期命名的目录,比如/data/att/linux/20240324,每天都会生成一个日期新目录,由于磁盘空间快满了,......
  • shell practice 06
    #!/bin/bash#author:Chiweiming#version:v1#date:2024-03-28<<COMMAND监控系统负载,如果系统负载超过10,记录系统状态信息1)系统负载命令使用uptime看,过去1分钟的平均负载2)系统状态使用如下工具标记:top、vmstat、ss3)要求每隔20s监控一次4)系统状态信息需要保存......
  • shell practice 08
    #!/bin/bash#author:ChiWeiming#version:v1#date:2024-04-12<<COMMANT输入一个数字,然后运行对应的一个命令。显示命令如下:*cmdmeau**1-date2-ls3-who4-pwd当输入1时,执行date命令,输入2时执行ls命令,依此类推COMMANTecho"*cmdmeau**1-date2-ls3-......
  • 2024.04.11 树上问题回顾
    2024.04.11树上问题回顾P2015二叉苹果树树形背包板子题。需要注意的是,枚举儿子\(v\)的选择数量\(k\)时,一定要先转移\(k=0\)的情况,否则就会用新状态来重复更新新状态,违背\(0/1\)背包的思路。#include<bits/stdc++.h>usingnamespacestd;template<typenameT>in......
  • [题解] [洛谷P1404] 平均数
    洛谷P1404平均数题目描述给一个长度为\(n\)的数列,我们需要找出该数列的一个子串,使得子串平均数最大化,并且子串长度\(\geqm\)。输入格式第一行两个整数\(n\)和\(m\)。接下来\(n\)行,每行一个整数\(a_i\),表示序列第\(i\)个数字。输出格式一个整数,表示最大平均数......
  • shell-read、exit命令
    一、读取控制台输入数据[root@vm-paasscwyfy]#viread.sh文件内容如下:#!/bin/bashread-p"请输入姓名年龄"nameageecho"你的姓名:"${name}echo"你的年龄:"${age}[root@vm-paasscwyfy]#shread.sh请输入姓名年龄zhangsan12你的姓名:zhangsan你的年龄:1......
  • Layerscape® LS1043AXN7QQB、LS1043AXN8QQA四核64位ARM处理器,ACFJ-3439T-000E(17A)栅
    一、Layerscape®1043A处理器简介:LS1043A处理器是一款面向嵌入式网络的四核64位Arm®处理器。LS1043A可通过支持无风扇设计的灵活I/O封装,提供超过10Gbps的性能。这款SoC是专为小规格网络、工业和汽车应用而打造的解决方案,针对经济型低端PCB优化了物料成本(BOM),降低了电源成本,......
  • 2024-04-11 15:45
    今天终于是写上日记了,之前要么没时间要么就不想写,过完年后有一大片空白期,领导看我们很清闲,就给我们各自安排学习任务,我学习Flutter相关知识,但是学习了之后发现Flutter是个框架,里边的语言是dart语言,发现还的学习dart,还要整理学习文档,哦我的天之前的东西都没明白就又学习另外一种语......
  • 2024.04.11NOIP模拟赛 #1 记录
    2024.04.11NOIP模拟赛#1记录AT_arc160_e[ARC160E]MakeBiconnected给你一棵\(n\)个节点由无向边组成的二叉树,树上每个点有权值\(w_i\)。你可以把两个点之间连无向边,如果将\(u\)与\(v\)连边,代价是\(w_u+w_v\)。请给出一种连边方式,使得连边后,图中去掉任何一个点仍然......
  • 20240409
    T1TopcoderSRM593div2Hard-MayTheBestPetWin由于每个宠物都要被分到一组中,所以只需要知道一组中的\(\summx-\summn\)就可以推出另一组的\(\summx-\summn\)。然后直接背包dp即可。代码#include<iostream>usingnamespacestd;constintN=500000;i......