权限脚本

权限脚本

这里是新手用户。

我创建了一个有三个用户的环境,分别是 Tim、James 和 Harry。

我创建了一个名为 Friends 的组,其中包括 Tim 和 James。我使用 chmod 0770 更改了该组的权限。因此,该组拥有所有权限(读取、写入、执行),而组外的任何人都没有任何权限(即 Harry)。

我想使用脚本自动测试这些权限是否适用于 Harry 用户。我已经在一个名为 Homework.txt 的文件上手动测试了它。为此,我输入了:nano homework.txt,权限被拒绝,正如预期的那样。

如果我想创建一个执行相同功能但针对不同文件(Photos.txt、Videos.txt、Album.txt)的脚本,我该怎么做?如果有人能对此有所启发,我将不胜感激。

谢谢

答案1

首先,请看:如何为终端命令创建脚本文件?这包括创建脚本本身。

要测试您是否可以写入文件,您可以使用:

[ -w filename ]

(并且-r对于阅读和-x执行也是如此。)

要对多个文件执行此操作,可以使用for循环:

for f in Photos.txt Videos.txt Album.txt
do
    if [ -w "$f" ]
    then
        echo "Can write to $f."
    else
        echo "Can't write to $f."
    fi
    if [ -r "$f" ]
    then
        echo "Can read from $f."
    else
        echo "Can't read from $f."
    fi
done

f这里是 shell 将在循环的每次迭代中设置为的变量。这Photos.txt就是获取变量值的方法。Videos.txtAlbum.txt"$f"

相关内容