小编Jac*_*cob的帖子

如何设置shell脚本的进程组

如何设置shell脚本的进程组?此外,我希望所有子进程都在同一进程组中

我期待类似于C中的setpgid().

linux shell process process-group

30
推荐指数
5
解决办法
2万
查看次数

如何在不删除项目的情况下查看Linux(POSIX)消息队列?

我需要查看消息队列而不删除它们.只有符合某些条件,我才会继续删除消息队列项.这该怎么做?以下是我所知道的API - 但似乎没有人支持偷看.

  • mq_close() - 关闭消息队列

  • mq_getattr() - 获取消息队列的当前属性

  • mq_notify() - 当队列变为非空时通知调用进程

  • mq_open() - 打开或创建消息队列

  • mq_receive() - 从队列接收消息

  • mq_send() - 将消息放入消息队列中

  • mq_setattr() - 设置消息队列的标志

  • mq_unlink() - 取消链接(即删除)消息队列

有没有办法在不删除邮件的情况下查看邮件?

c linux message-queue

14
推荐指数
1
解决办法
3168
查看次数

我怎样才能将Java控制台输出读入String缓冲区

我有一个Java程序,可以将一些文本输出到控制台.它使用print,println和其他一些方法来做到这一点.

在程序结束时,我想读取控制台中的所有文本并将其复制到String缓冲区中.我怎么能用Java做到这一点?我需要阅读stdoutstderr独立.

java console

13
推荐指数
2
解决办法
2万
查看次数

Linux管道:通过popen捕获ping的实时输出

Linux的/ C /管道:

如何使用popen(或类似的系统调用)捕获ping命令的输出.目前popen将等待ping完成.然后输出将被转储.

伪代码:

fp= popen("ping x.x.x.x", "r");
while(!feof(pFp))
{
   if(fgets(fp ...) // <==currently the code blocks here until ping finishes in popen
   { 
       printf(...real time ping output here);
   }
}
Run Code Online (Sandbox Code Playgroud)

c c++ linux

6
推荐指数
1
解决办法
1944
查看次数

在LGPL代码中包含GPL标头

我想在专有的基于C的应用程序中使用Bluez蓝牙(GPL)库.我想要使​​用GPL解决方法.

我的计划是:

  1. 编写一个链接到Bluez库(GPL)的LGPL包装器库,还包括Bluez库头文件(也是GPL).因此包装器变成LGPL(我是对的吗?).

  2. 将LGPL包装器库链接到我的专有应用程序.

这是我的专有应用程序是否可以安全地避免GPL污染?

如果没有,这里的解决方法是什么?

提前致谢

c gpl lgpl bluetooth

2
推荐指数
2
解决办法
2091
查看次数

如何将SIGSTOP发送到从shell脚本启动的所有进程

我有一个shell脚本,启动4个其他二进制文件.我正在向shell脚本发送SIGSTOP.这是否也会阻止所有其他4个进程?如果没有,我该怎么做才能将SIGSTOP转发给这些流程?与SIGCONT类似.

我有所有4个二进制文件的C源代码.

c linux shell

1
推荐指数
1
解决办法
2485
查看次数

为什么在程序退出时没有关闭打开的描述符?

我在2.6.16-rc3下面有一个小程序,它使用busy box(在jffs2文件系统上).如果我多次运行程序,它会在第二次开始失败.程序退出时,描述符应自动关闭,下次重新开始,对吧?

为什么我有时会得到-1?(注意 - 在我的Fedora Linux PC上,它工作正常)

root@badge 07:29:32 ~ >touch Hello.txt
root@badge 07:29:37 ~ >./a.out
FP = 3
root@badge 07:29:38 ~ >./a.out
FP = -1
root@badge 07:29:40 ~ >./a.out
FP = 3
root@badge 07:29:41 ~ >./a.out
FP = -1
root@badge 07:29:42 ~ >./a.out
FP = 3
root@badge 07:29:43 ~ >./a.out
FP = 3
root@badge 07:29:43 ~ >./a.out
FP = -1
root@badge 07:29:45 ~ >
Run Code Online (Sandbox Code Playgroud)

程序:

#include <stdio.h>
int main()
{
        int fp;
        fp = open ("Hello.txt");
        printf("FP = %d\n", …
Run Code Online (Sandbox Code Playgroud)

c linux busybox

1
推荐指数
1
解决办法
80
查看次数

标签 统计

c ×5

linux ×5

shell ×2

bluetooth ×1

busybox ×1

c++ ×1

console ×1

gpl ×1

java ×1

lgpl ×1

message-queue ×1

process ×1

process-group ×1