如何使用shell脚本测试文件权限?

Su_*_*bee 6 bash permissions test

我正在通过以 root 身份运行此脚本来测试我的文件是否具有读取权限:

#!/usr/bin/env bash

FILE="/etc/shadow"

if ! [ -r $FILE ]; then
  echo "Hello"
fi

exit 0
Run Code Online (Sandbox Code Playgroud)

理想情况下,脚本必须打印,Hello因为没有读取权限。但是,这并没有发生。

ls -ltrh /etc/shadow
---------- 1 root root 7.1K Jun  7 06:59 /etc/shadow
Run Code Online (Sandbox Code Playgroud)

脚本中需要修改什么?

som*_*ing 9

检查目录、文件或链接的权限信息

stat -L -c "%a %G %U" FILE or DIRECTORY
Run Code Online (Sandbox Code Playgroud)