シェルスクリプトを使用してファイル権限をテストする方法は?

シェルスクリプトを使用してファイル権限をテストする方法は?

このスクリプトをrootとして実行して、私のファイルに読み取り権限があるかどうかをテストしています。

#!/usr/bin/env bash

FILE="/etc/shadow"

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

exit 0

Hello理想的には読み取り権限がないため、スクリプトを印刷する必要があります。しかし、これは起こりませんでした。

ls -ltrh /etc/shadow
---------- 1 root root 7.1K Jun  7 06:59 /etc/shadow

スクリプトで何を修正する必要がありますか?

ベストアンサー1

ディレクトリ、ファイル、リンクの権限情報を確認する

stat -L -c "%a %G %U" FILE or DIRECTORY

おすすめ記事