我的问题:
是否可以将命令行输入传递给正在运行的守护程序?
解决方法 所有正在运行的进程在/proc
下都有一个特殊目录,其中包含进程中的信息和挂钩. / proc的每个子目录都是正在运行的进程的PID.因此,如果您知道特定过程的PID,则可以获得有关它的信息.例如.: $sleep 100 & ls /proc/$!...cmdline...cwdenvironexefdfdinfo...status...
值得注意的是fd目录,其中包含与进程关联的所有file descriptors. 0(1和2)存在(几乎?)所有进程,0是默认的stdin.因此写入/ proc / $PID / fd / 0将写入该进程的stdin.
更强大的替代方案是设置连接到进程’stdin的named pipe;然后你可以写入该管道,进程将读取它而无需依赖/ proc文件系统.
另请参阅ServerFault上的Writing to stdin of background process.
总结以上是内存溢出为你收集整理的linux – 是否可以将输入传递给正在运行的服务或守护进程?全部内容,希望文章能够帮你解决linux – 是否可以将输入传递给正在运行的服务或守护进程?所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)