如何使用“fuser”获取嵌套文件夹的进程列表,同时使用父文件夹作为参数?

如何使用“fuser”获取嵌套文件夹的进程列表,同时使用父文件夹作为参数?

我正在使用fuser命令来获取访问文件夹的进程列表。但是,如果进程正在处理内部文件夹中存在的文件,则fuser在父级上执行命令不会提供处理内部文件夹的进程的详细信息。

有什么方法可以在fuser父文件夹上执行时提取内部文件夹的进程详细信息吗?

我正在使用 Solaris 5.8。

下面是我尝试过的代码:

〜:密码
/home/ah388

〜:ls
sasuser.v91/

~: cd sasuser.v91/
~/sasuser.v91: 猫 kk.sh
而[1];做
回声“”> /dev/null
完毕;

〜/ sasuser.v91:./kk.sh &
[1]15140

〜/ sasuser.v91:ls
a/kk.sh*

〜/ sasuser.v91:cd a
〜/ sasuser.v91:ls
kk.sh*

~/sasuser.v91/a: ./kk.sh &
[2]15271

〜/ sasuser.v91 / a:cd

~:定影器-u sasuser.v91
sasuser.v91: 15140c(ah388880) --> 15271 进程怎么样

〜:工作
[1]- 运行 ./kk.sh & (wd: ~/sasuser.v91)
[2]+ 运行 ./kk.sh & (wd: ~/sasuser.v91/a)

答案1

这将显示用户当前使用的所有目录:

fuser -u $(find sasuser.v91 -type d) 2>&1 | grep 'c('

答案2

只需创建一个脚本来为您执行该操作

for i in `find directory -type d`
do
 echo $i
 fuser -u $i
done

您甚至可以添加一个 if 来查看是否有一些输出,然后只打印正在运行的进程的输出。

相关内容