gpt4 book ai didi

linux - 如何更改属于选定用户的所有文件的权限

转载 作者:太空宇宙 更新时间:2023-11-04 05:27:15 25 4
gpt4 key购买 nike

脚本循环查找包含字符串 RECHERCHE(从另一个脚本导出)的每个用户,并更改他们的权限及其默认权限。每当我尝试运行它时,都会遇到语法错误。

#!/bin/bash
while read line
do

if [-z "$(grep "/home" | cut -d: -f5 | grep -i "$RECHERCHE")" ]
then
user=$(cut -f: -f1)
file=$(find / -user user)
if [$(stat -c %a file) >= 700]
then
chmod 700 file
fi
if [$(stat -c %a file) < 600]
then
chmod 600 file
fi
umask 177
done 2>> /home/$user/challenge.log

我知道这看起来可能会同时出现很多问题,但是当我尝试运行它时,它会在完成时给我一个语法错误(第 18 行:意外标记“done”附近的语法错误),所以我不知道其背后的逻辑是否有效。另外,我也不知道自己在做什么。请帮忙,提前致谢。

最佳答案

您缺少一个 fi。我不确定你想对你读到的这行代码做什么。我显然无法运行它,您需要完成修复它,但是完成的特定问题已解决,请参阅以下版本的代码:

#!/bin/bash
read line
while $line ; do
if [-z "$(grep "/home" | cut -d: -f5 | grep -i "$RECHERCHE")" ]; then
user=$(cut -f: -f1)
file=$(find / -user user)
if [$(stat -c %a file) >= 700]; then
chmod 700 file
fi
if [$(stat -c %a file) < 600]; then
chmod 600 file
fi
umask 177
fi
read line
done 2>> /home/$user/challenge.log

关于linux - 如何更改属于选定用户的所有文件的权限,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29465900/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com