系统之家 - Windows操作系统&装机软件下载网站!

当前位置: 首页  >  教程资讯  >  电脑教程 linux如何判断指定用户对指定目录具有的权限具体介绍

linux如何判断指定用户对指定目录具有的权限具体介绍

时间:2023-06-02 16:16:41 来源: 人气:

   脚本名:power.sh,  脚本内容:,  代码如下:,  #!/bin/sh,  username3=$1,  dir_name2=$2,  # get existing directory,  file_path=$dir_name2,  while true,  do,  if [ -d $file_path ];then,  break;,  fi,  file_path=${file_path%/*},  done,  dir_name2=$file_path,  # Judge whether the user exists,  grep "^$username3:" /etc/passwd >/dev/null,  if [ $? -ne 0 ];then,  echo "This user "$username3" does not exist.",  exit 4,  fi,  #echo "username : $username3",  group4=` grep "^$username3:" /etc/passwd |awk -F : {print $4}|xargs -i grep {} /etc/group|cut -d":" -f1`,  #echo "group : $group4",  su -l $username3 -c "test -r $dir_name2",  is_read=$?,  su -l $username3 -c "test -x $dir_name2",  is_exe=$?,  su -l $username3 -c "test -w $dir_name2",  is_write=$?,  $is_read_str,  $is_exe_str,  $is_write_str,  if [ $is_read -eq 0 ];then,  is_read_str="r",  else,  is_read_str="-",  fi,  if [ $is_exe -eq 0 ];then,  is_exe_str="x",  else,  is_exe_str="-",  fi,  if [ $is_write -eq 0 ];then,  is_write_str="w",  else,  is_write_str="-",  fi,  echo "${is_read_str}${is_write_str}${is_exe_str}",  -------------------------------------------,  注意:必须以root 身份执行该脚本。,  脚本power.sh 需要两个参数,第一个表示指定的用户,第二个表示指定的目录,  测试:,  [root@ppc40 study]# sh power.sh whuanga4 /tmp/abc/dd,  This user "whuanga4" does not exist.,  [root@ppc40 study]# sh power.sh whuang4 /tmp/abc/dd,  rw-,  (说明:表示用户whuang4 对目录/tmp/abc/dd 具有读和写权限,没有执行权限)。,

作者

教程资讯

电脑教程排行

系统教程

系统主题