Если XXX - это pid
файл / proc / XXX / fd / * | grep / dev / pt
Но вы получите несколько строк на pty, если в процессе он открыт для нескольких ролей (например, stdin stdout и stderr)
Но я думаю, это не поможет для AIX и Linux, если только AIX сильно изменилось с тех пор, как я последний раз его использовал
Учитывая, что ваш exclude_file
содержит пути, а не имена, вам необходимо использовать -path
для сопоставления его записей. Чтобы исключить соответствующие подкаталоги каталогов, вам также необходимо -prune
их. Это должно сработать:
find . -type d \( $(printf -- "-path */%s -o " $(cat "$exclude_file")) -false \) -prune -o -print
Если вы хотите видеть только файлы, вы можете печатать только файлы:
find . -type d \( $(printf -- "-path */%s -o " $(cat "$exclude_file")) -false \) -prune -o -type f -print