
linux – 检测stdout是否被重定向到管道(而不是文件,字符设备,终端或套接字)?
理想情况下,这可以在 shell中编写脚本,但Perl或 Python可以. C代码可能会有所帮助,但可能会降低成本/收益. 我认识到重定向到FIFO(命名管道)可能与真实管道无法区分, 这就是我不太关心的边缘情况. 严格的POSIX解决方案是最好的,UNIX / Linux变体独立是最好的,

linux – 为什么将’script’重定向到/ dev / null /允许’screen’在作为另一个用户的时候工
我被用户运行一个特定的长期运行脚本.我想使用屏幕,但我收到错误消息“无法打开您的终端’/ dev / pts / 4′ – 请检查.” 所以我用Google搜索并发现了一个指示运行$script’/ dev / null /’的论坛帖子.我这样做然后我可以屏幕. 为什么这样做?什么是这样的