c - 在C语言中我们如何找到进程的作业ID?

标签 c unix shell

  1. shell 是否为所有进程(前台和后台)分配作业 ID?

  2. jobs 命令显示现有的后台作业。我们如何查看前台进程的作业ID?

  3. 我想使用 C 语言中的函数(例如 getpid())来获取某个任务的作业 ID状态给定进程 给定进程的 pid。

  4. 作业 ID 的最大值是多少?

最佳答案

作业控制是一个 shell 功能,而不是像进程那样的操作系统级别功能。

  1. 调用作业控制时会分配作业标识符,例如使用挂起字符(通常是 Ctrl-Z)或在命令行末尾发出 & 与号。

  2. 前台进程仅在您挂起时才获取作业 ID。 shell 会在挂起时为您输出作业 ID。

  3. 你不能,因为你不再在 shell 中工作。

  4. 我怀疑您在用完作业 ID 之前先用完了其他资源。

关于c - 在C语言中我们如何找到进程的作业ID?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1509033/

相关文章:

c++ - 在内存中处理一些长 vector 时如何不弄乱缓存?

python - 从 Arduino C 到 Raspberry pi python - 线程内的 volatile 变量访问

c - 如何在结构体中初始化 char**

python - 如何在Makefile中将./扩展为绝对路径

php - Web 应用程序的超快速数据库访问 - SQL 或 NoSQL,解释型 PHP 或编译型 C?

c - 在 C shell 中实现管道 (Unix)

c - 与 char *foo[] 的字符串连接

LINUX 如何删除包含某个名称的文件?

shell - 如何在 shell 脚本中通过管道传输后台进程

linux - 控制 M 字符的奇怪外观