【发布时间】:2018-12-03 08:14:50
【问题描述】:
我正在尝试使用脚本在文件夹下创建几个文件,但无法创建。 以下是创建某些文件的文件夹权限
su pnaid
部分脚本内容,负责创建文件夹并在其中创建文件
MKDIR_CMD="/bin/mkdir -p \"${PATH_TO_WRITE}\" > /dev/null 2>&1"
"${MKDIR_CMD}"
echo "Checking Dir Path exist"
if [ -d "${PATH_TO_WRITE}" ]; then
echo "Calling another script to create files under this folder"
"/createFiles.sh \"${PATH_TO_WRITE}\""
else
echo "WARNING: unable to create folder"
$(PATH_TO_WRITE) 的父文件夹具有以下权限
drwxr-x---. 2 pnaid pnaid 4096 Dec 3 12:31 work_directory
每次显示“警告:无法创建文件夹”语句。
我尝试使用具有 777 权限的 pnaid 用户创建一个文件夹,并在脚本而不是“${MKDIR_CMD}”中提供该文件夹,在这种情况下,会显示“调用另一个脚本以在此文件夹下创建文件”语句,但另一个脚本无法写入此文件夹。
从原始脚本调用时createFiles.sh的回显语句也没有显示,有什么方法可以查看它。
如果我们在 shell 提示符而不是脚本中执行相同的命令,这些命令会起作用并获得所需的输出;即创建文件夹,其中包含所有文件。
如果我们使用 root 用户运行,同样的脚本也可以工作。
我相信这应该适用于各种 Linux,在这种情况下我使用的是 CentOS
请帮我解决这个问题,如果我遗漏了任何细节,请告诉我。
谢谢
【问题讨论】:
标签: linux shell permissions