【发布时间】:2016-03-15 23:04:16
【问题描述】:
当前用户是$USER。以前我使用:
if [ -e "$f" ] && [ `stat -c %U "$f"` != $USER ] \
|| [ -e "${f%/*}" ] && [ `stat -c %U "${f%/*}"` != $USER ]; then
检测文件是否归用户所有(如果文件不存在,则检测目录)。
但是文件可以被其他人拥有并且用户仍然可以修改它(组/其他可写)。
如何检查当前用户是否可以通过 POSIX 实用程序(或者如果不可能 - 通过 GNU 扩展)编辑文件?
我需要考虑扩展属性吗?如何处理?
【问题讨论】:
-
不能'你只是尝试以写模式打开文件,检查打开的返回值然后关闭文件描述符?
-
我受限于 POSIX 或 GNU 实用程序(命令行),无法编译自定义 C 程序。
标签: posix file-permissions file-exists file-ownership