英语法语西班牙文

OnWorks 网站图标

waitposix - 云端在线

通过 Ubuntu Online、Fedora Online、Windows 在线模拟器或 MAC OS 在线模拟器在 OnWorks 免费托管服务提供商中运行 waitposix

这是命令 waitposix,可以使用我们的多个免费在线工作站之一在 OnWorks 免费托管服务提供商中运行,例如 Ubuntu Online、Fedora Online、Windows 在线模拟器或 MAC OS 在线模拟器

程序:

您的姓名


wait — 等待进程完成

概要


等待 [PID...]

商品描述


当一个异步列表(见 部分 2.9.3.1, 例子) 由 shell 启动,
异步列表的每个元素中最后一个命令的进程 ID 应为已知
在当前shell执行环境中; 看 部分 2.12, 外壳 执行 环境.

如果 等待 实用程序在没有操作数的情况下被调用,它将等待直到所有进程 ID 已知
调用 shell 已终止并以零退出状态退出。

如果一个或多个 PID 指定代表已知进程 ID 的操作数, 等待
实用程序应等到所有这些都终止。 如果一个或多个 PID 操作数是
指定代表未知进程 ID, 等待 将他们视为已知
以退出状态 127 退出的进程 ID。 等待 效用
应该是最后一个请求的进程的退出状态 PID 操作数。

已知进程 ID 仅适用于调用 等待 在当前外壳中
执行环境。

配置


无。

操作数


应支持以下操作数:

PID 以下情况之一:

1.命令的无符号十进制整数进程ID,实用程序
就是等待终止。

2. 作业控制作业 ID(参见 POSIX.1-2008 的 Base Definitions 卷,
部分 3.204, 工作 系统 工作 ID) 标识后台进程
等待的组。 作业控制作业 ID 表示法仅适用
用于调用 等待 在当前shell执行环境中; 看
部分 2.12, 外壳 执行 环境. 的退出状态 等待 应该
由管道中的最后一个命令确定。

请注意: 作业控制作业 ID 类型 PID 仅在系统上可用
支持用户便携实用程序选项。

标准输入


不曾用过。

INPUT FILES


无。

环境 变数


以下环境变量会影响执行 等待:

为未设置或未设置的国际化变量提供默认值
空值。 (参见 POSIX.1-2008 的基本定义卷, 部分 8.2,
国际化 变量 为国际化优先
用于确定语言环境类别值的变量。)

LC_ALL 如果设置为非空字符串值,则覆盖所有其他字符串的值
国际化变量。

LC_CTYPE 确定用于解释文本数据字节序列的语言环境
作为字符(例如,单字节而不是多字节字符
论据)。

LC_消息
确定应该用于影响格式和内容的语言环境
写入标准错误的诊断消息。

路径 确定用于处理的消息目录的位置 LC_消息.

异步 新闻


默认。

标准输出


不曾用过。

斯特德


标准错误应仅用于诊断消息。

OUTPUT FILES


无。

EXTENDED 商品描述


无。

退出 状态


如果指定了一个或多个操作数,则所有这些操作数都已终止或不为其他人所知
调用 shell,并且指定的最后一个操作数的状态是已知的,然后退出
状态 等待 应该是最后一个指示的命令的退出状态信息
指定的操作数。 如果进程因为收到信号而异常终止,
退出状态应大于 128 且应与退出状态不同
由其他信号生成,但未指定确切值。 (见 -l 选项。)
否则, 等待 实用程序应以以下值之一退出:

该0 等待 实用程序在没有操作数和所有进程 ID 的情况下被调用
调用 shell 已终止。

1-126 等待 实用程序检测到错误。

第127回 PID 指定的操作数未知。

后果 OF 错误


默认。

这款 以下 部分 旨在 内容丰富。

申请须知 用法


在大多数实现中, 等待 是一个内置的shell。 如果在子shell中调用它或
单独的实用程序执行环境,例如以下之一:

(等待)
诺哈普 等待 ...
发现 . -执行 等待 ... \;

它立即返回,因为在那些中没有已知的进程 ID 等待
环境。

交互式 shell 的历史实现已经丢弃了
在每个 shell 提示之前终止后台进程。 因此,状态
后台进程通常会丢失,除非它终止而 等待 正在等待它。
当预期运行很长时间的作业时,这可能是一个严重的问题
由于退出状态,语法或初始化错误实际上很快终止
如果未找到请求的进程 ID,则返回值通常为零。 这个体积
POSIX.1-2008 要求实现以保持已终止作业的状态可用
直到请求状态,以便脚本如下:

j1&
p1=$!
j2&
等待 $p1
回音 工作 1 退出 - 状态 $?
等待 $!
回音 工作 2 退出 - 状态 $?

工作而不会失去任何工作的地位。 允许外壳丢弃状态
任何进程,如果它确定应用程序无法获得该进程 ID
从 shell 处理。 还需要只记住 {CHILD_MAX} 个
以这种方式处理。 由于从 shell 获取进程 ID 的唯一方法是使用
'! shell 参数,允许 shell 丢弃异步状态
列出如果 “$!” 在另一个异步列表启动之前没有被引用。 (这意味着
shell 只需要保持最后一个异步列表的状态,如果
申请没有参考 “$!”. 如果shell的实现足够聪明
确定引用 “$!” 未保存在应用程序可以访问的任何位置
稍后检索它,它可以使用此信息来修剪已保存信息的列表。 笔记
也成功调用 等待 没有操作数丢弃所有的退出状态
异步列表。)

如果退出状态为 等待 大于 128,应用程序无法
知道等待的进程是否以该值退出或被信号杀死。 自从
大多数实用程序以小值退出,很少有任何歧义。 即使在
模棱两可的情况,大多数应用程序只需要知道异步作业失败; 它
不管它是检测到错误并失败还是被杀死并且没有完成
它的工作正常。

示例


虽然进程被信号终止时使用的确切值未指定,但如果
众所周知,一个信号终止了一个进程,脚本仍然可以可靠地确定
使用哪个信号 如以下脚本所示:

睡觉 1000&
pid=$!
-杀死 $pid
等待 $pid
回音 $pid 终止 by a SIG$(杀死 -l $?) 信号。

如果以下命令序列在不到 31 秒内运行:

睡觉 257 | 睡觉 31 &
工作 -l %%

以下任一命令返回第二个的退出状态 睡觉 ,在
管道:

等待 <pid of 睡觉 31>
等待 %%

基本原理


的描述 等待 不指 等待进程() 函数来自系统
POSIX.1-2008 的接口卷,因为那会不必要地过度指定这个
界面。 然而,措辞意味着 等待 需要等待明确的
process 当它被赋予一个参数以便其他进程的状态信息是
未消耗。 历史实现使用 等待() 函数定义在 System
POSIX.1-2008 之前的接口量 等待() 返回请求的进程 ID 或找到
请求的进程不存在。 因为这意味着 shell 脚本可以
如果曾经有第二份背景工作,则无法可靠地获得所有背景儿童的状态
在第一个工作完成之前开始,建议 等待 实用程序使用
方法,例如提供的功能 等待进程() 功能。

能够等待多个 PID 操作数是从 KornShell 中采用的。

添加此新功能是因为需要确定任何退出状态
异步列表准确。 此更改造成的唯一兼容性问题是
对于像这样的脚本

睡觉 60 do
工作& 回音 工作 开始 $(日期) as $! 完成

这会导致 shell 监视所有已启动的作业,直到脚本终止或
内存不足。 如果循环没有引用,这将不是问题 “$!” 或者如果
脚本偶尔会 等待 对于它开始的工作。

未来 如何前往


无。

使用 onworks.net 服务在线使用 waitposix


免费服务器和工作站

下载 Windows 和 Linux 应用程序

  • 1
    阿伏加德罗
    阿伏加德罗
    阿伏伽德罗是一种先进的分子
    专为跨平台使用而设计的编辑器
    在计算化学,分子
    建模、生物信息学、材料
    科学和...
    下载阿伏加德罗
  • 2
    XML电视
    XML电视
    XMLTV 是一组要处理的程序
    电视 (tvguide) 列表和帮助管理
    您的电视观看,将列表存储在
    基于 XML 的格式。 有实用程序
    做...
    下载 XMLTV
  • 3
    罢工者
    罢工者
    Strikr 自由软件项目。 文物
    在“基于意图的”下发布
    双许可证:AGPLv3(社区)和
    CC-BY-NC-ND 4.0 国际
    (商业的)...
    下载 strikr
  • 5
    GIFLIB
    GIFLIB
    giflib 是一个用于阅读和
    写gif图片。 它是 API 和 ABI
    与 libungif 兼容
    LZW压缩时广泛使用
    算法是...
    下载 GIFLIB
  • 6
    Alt-F
    Alt-F
    Alt-F 提供了一个免费和开源的
    DLINK 的替代固件
    DNS-320/320L/321/323/325/327L and
    DNR-322L。 Alt-F 有 Samba 和 NFS;
    支持ext2/3/4...
    下载 Alt-F
  • 更多 ”

Linux 命令

Ad