상위 폴더를 인수로 사용하는 동안 "fuser"를 사용하여 중첩 폴더의 프로세스 목록을 얻으려면 어떻게 해야 합니까?

상위 폴더를 인수로 사용하는 동안 "fuser"를 사용하여 중첩 폴더의 프로세스 목록을 얻으려면 어떻게 해야 합니까?

fuser폴더에 액세스하는 프로세스 목록을 가져오는 명령을 사용하고 있습니다 . 그러나 프로세스가 내부 폴더에 있는 파일을 처리하는 경우 fuser상위에서 명령을 실행하면 내부 폴더를 처리하는 프로세스에 대한 세부 정보가 제공되지 않습니다.

fuser상위 폴더에서 실행할 때 내부 폴더의 프로세스 세부 정보를 추출 할 수 있는 방법이 있습니까 ?

저는 솔라리스 5.8을 사용하고 있습니다.

다음은 내가 시도한 코드입니다.

~:비밀번호
/집/ah388

~:ls
sasuser.v91/

~: cd sasuser.v91/
~/sasuser.v91: catkk.sh
그리고 [1];
에코 "" > /dev/null
완벽한;

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

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

~/sasuser.v91:cd
~/sasuser.v91:ls
kk.sh*

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

~/sasuser.v91/a:cd

~:fixer-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를 추가하여 일부 출력이 있는지 확인한 다음 실행 중인 프로세스의 출력을 인쇄할 수도 있습니다.

관련 정보