Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/shell/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Shell Solaris-在指定目录中搜索文件_Shell_Unix_Find_Command - Fatal编程技术网

Shell Solaris-在指定目录中搜索文件

Shell Solaris-在指定目录中搜索文件,shell,unix,find,command,Shell,Unix,Find,Command,我正试图让我的查找命令工作,但我做不到我正在尝试查找用户仅在给定目录(不包括其子目录)中可执行的文件问题是我的find命令中没有-maxdepth,-path,-regex键,所以我尝试使用-prune选项来执行此操作。 我在另一个关于Stackoverflow的类似问题中找到了find/dev\(!-name/dev-prune\)-type f-print解决方案,但它也不起作用。 当前我的命令看起来像这样查找--“$path”\(!-name“$path”-prune\)-type f-p



我正试图让我的
查找
命令工作,但我做不到
我正在尝试查找用户仅在给定目录(不包括其子目录)中可执行的文件
问题是我的
find
命令中没有
-maxdepth
-path
-regex
键,所以我尝试使用
-prune
选项来执行此操作。

我在另一个关于Stackoverflow的类似问题中找到了
find/dev\(!-name/dev-prune\)-type f-print
解决方案,但它也不起作用。

当前我的命令看起来像这样查找--“$path”\(!-name“$path”-prune\)-type f-perm-u=x-print


“$path
既可以是绝对路径,也可以是相对路径

你能绕过
查找吗

ls-la“$path”| awk'^/-[r-][w-]x/{print$9}'


也就是说,在长列表中列出文件,只保留那些具有所需权限的行并打印文件名。

想知道哪个系统没有
-maxdepth
@jm666,Solaris 8为一个。@glennjackman thanx,因为我在我的卫星接收器(皱巴巴的busybox)上尝试了
查找
它知道maxdepth:)奇怪的Solaris;)问题解决方案呢?:)你在使用什么shell,即为什么需要
find
?类似于“$path”/*”中f的
;do[-f“$f”]&&[$(stat-c%a“$f”)=~^[1357]]&&echo“$f"; 完成
解析
ls
通常是不好的,但是如果特定版本的
solaris
没有
stat
,这可能是一种方法。不确定您的
awk
是否有效,可以尝试类似于
ls-la | grep-P'^-[r-][w-]x'
的方法,而不是该问题只需要文件名,因此打印$9。但它假定没有文件名包含空格。