繁体   English   中英

在Linux的目录中查找所有user1所有和user1的组可执行文件

[英]Find all user1 owned and user1's group executable files in the directory in Linux

我想在Linux的目录中找到所有user1所有和user1的组可执行文件。

使用find following可以正常工作:

find /$mydir -type f -user user1 -perm -010

但是需要知道如何使用lsgrep做同样的事情。

如果未指定maxdepthfind命令执行递归搜索。

对于当前目录:

ls -l | awk '$3=="user1"&&$4=="user1group"&&substr($1,1,1)=="-"&&substr($1,7,1)=="x" {print $NF}' ls -l | awk '$3=="user1"&&$4=="user1group"&&substr($1,1,1)=="-"&&substr($1,7,1)=="x" {print $NF}'将在您知道user1的组。

或在所有子文件夹的组之间使用递归搜索:

user="user1";for s in `groups $user| sed 's/.*: //g'`; do awkstmt="ls -R -l | awk '\$3==\"$user\"&&\$4==\""$s"\"&&substr(\$1,1,1)==\"-\"&&substr(\$1,7,1)==\"x\" {print \$NF}'"; eval $awkstmt; done | sort | uniq

或在当前文件夹中的组之间进行递归搜索:

user="user1";for s in `groups $user| sed 's/.*: //g'`; do awkstmt="ls -l | awk '\$3==\"$user\"&&\$4==\""$s"\"&&substr(\$1,1,1)==\"-\"&&substr(\$1,7,1)==\"x\" {print \$NF}'"; eval $awkstmt; done | sort | uniq

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM