【发布时间】:2011-07-22 18:37:26
【问题描述】:
我想知道管道另一端的 pid。如果是 Linux,我可以像这些命令一样匹配 ls -l /proc/SELF_PID/fd/0 的 id。
在 Linux 上有更好的方法吗?或者如何在 BSD 和其他操作系统上运行?
我想知道有没有好的CPAN模块...
谢谢。
【问题讨论】:
-
为什么你需要知道谁在听管道?
-
我想用标准输入管道另一端的命令名来命名日志文件。
-
但是如果我这样做
tee_log <some_file | command呢?无法将文件描述符转换回文件名(例如,由于硬链接和符号链接,文件可能通过多个路径和名称访问)。 -
我明白了。但我想自动设置日志文件名。或者我想知道解决这个问题的更好方法(获取管道另一侧的 pid)以供将来参考:) (可能存在管道打开的问题)超过2个进程..)
-
我只是让用户传递一个文件名(或模式)作为参数,就像普通的
tee命令一样。