'\" te .\" Copyright 1989 AT&T Copyright (c) 2001, Sun Microsystems, Inc. All Rights Reserved .TH ckstr 1 "1992 年 9 月 14 日" "SunOS 5.11" "用户命令" .SH 名称 ckstr, errstr, helpstr, valstr \- 显示提示;验证并返回字符串答复 .SH 用法概要 .LP .nf \fBckstr\fR [\fB-Q\fR] [\fB-W\fR \fIwidth\fR] [ [\fB-r\fR \fIregexp\fR] [...]] [\fB-l\fR \fIlength\fR] [\fB-d\fR \fIdefault\fR] [\fB-h\fR \fIhelp\fR] [\fB-e\fR \fIerror\fR] [\fB-p\fR \fIprompt\fR] [\fB-k\fR \fIpid\fR [\fB- s\fR \fIsignal\fR]] .fi .LP .nf \fB/usr/sadm/bin/errstr\fR [\fB-W\fR \fIwidth\fR] [\fB-e\fR \fIerror\fR] [\fB-l\fR \fIlength\fR] [ [\fB-r\fR \fIregexp\fR] [...]] .fi .LP .nf \fB/usr/sadm/bin/helpstr\fR [\fB-W\fR \fIwidth\fR] [\fB-h\fR \fIhelp\fR] [\fB-l\fR \fIlength\fR] [ [\fB-r\fR \fIregexp\fR] [...]] .fi .LP .nf \fB/usr/sadm/bin/valstr\fR [\fB-l\fR \fIlength\fR] [ [\fB-r\fR \fIregexp\fR] [...]] \fIinput\fR .fi .SH 描述 .sp .LP \fBckstr\fR 实用程序可提示用户并验证回复。其作用之一是定义回复应该为字符串的提示消息、帮助和错误消息的文本以及缺省值(用户按 RETURN 键时返回)。 .sp .LP 该命令返回的答复必须符合定义的正则表达式,而且长度不能超过指定的值。如果未指定正则表达式,则有效输入的字符串必须符合以下条件:长度小于或等于定义的长度而且没有内部空格、前导空格或结尾空格。如果未定义长度,则不检查长度。 .sp .LP 所有消息的长度均不得超过 79 个字符,消息格式将自动设置。将删除消息定义中一个空格字符后的制表符和换行符,但是不删除空格。如果在消息定义开头或结尾输入波浪号,将在该位置插入缺省文本,这样便可同时显示定制文本和缺省文本。 .sp .LP 如果未定义提示、帮助或错误消息,将显示缺省消息(如“示例”部分所定义)。 .sp .LP 有三个可视化工具模块与 \fBckstr\fR 命令关联。分别是 \fBerrstr\fR(用于标准输出中错误消息的格式设置和显示)、\fBhelpstr\fR(用于标准输出中帮助消息的格式设置和显示)和 \fBvalstr\fR(用于验证回复)。 .SH 选项 .sp .LP 支持以下选项: .sp .ne 2 .mk .na \fB\fB-d\fR \fIdefault\fR\fR .ad .RS 14n .rt 将缺省值定义为 \fIdefault\fR。缺省值不进行验证,因此无需符合任何条件。 .RE .sp .ne 2 .mk .na \fB\fB-e\fR \fIerror\fR\fR .ad .RS 14n .rt 将错误消息定义为 \fIerror\fR。 .RE .sp .ne 2 .mk .na \fB\fB-h\fR \fIhelp\fR\fR .ad .RS 14n .rt 将帮助消息定义为 \fIhelp\fR。 .RE .sp .ne 2 .mk .na \fB\fB-k\fR \fIpid\fR\fR .ad .RS 14n .rt 指定如果用户选择退出,将向进程 \fBID\fR \fIpid\fR 发送信号。 .RE .sp .ne 2 .mk .na \fB\fB-l\fR \fIlength\fR\fR .ad .RS 14n .rt 指定输入的最大长度。 .RE .sp .ne 2 .mk .na \fB\fB-p\fR \fIprompt\fR\fR .ad .RS 14n .rt 将提示消息定义为 \fIprompt\fR。 .RE .sp .ne 2 .mk .na \fB\fB-Q\fR\fR .ad .RS 14n .rt 指定不允许\fB退出\fR作为有效的响应。 .RE .sp .ne 2 .mk .na \fB\fB-r\fR \fIregexp\fR\fR .ad .RS 14n .rt 指定验证输入要依据的正则表达式 \fIregexp\fR。可以包含空格。如果定义了多个表达式,答复只需符合其中一个。 .RE .sp .ne 2 .mk .na \fB\fB-s\fR \fIsignal\fR\fR .ad .RS 14n .rt 指定如果选择退出,将向使用 \fB-k\fR 选项定义的进程 \fBID\fR \fIpid\fR 发送信号 \fIsignal\fR。如果未指定信号,将使用 \fBSIGTERM\fR。 .RE .sp .ne 2 .mk .na \fB\fB-W\fR \fIwidth\fR\fR .ad .RS 14n .rt 指定提示、帮助和错误消息的格式设置:行长度为 \fIwidth\fR。 .RE .SH 操作数 .sp .LP 支持下列操作数: .sp .ne 2 .mk .na \fB\fIinput\fR\fR .ad .RS 9n .rt 要根据格式长度和/或正则表达式条件验证的输入。 .RE .SH 示例 .LP \fB示例 1 \fR缺省提示 .sp .LP \fBckstr\fR 的缺省提示为: .sp .in +2 .nf example% \fBckstr\fR Enter an appropriate value [?,q]: .fi .in -2 .sp .LP \fB示例 2 \fR缺省错误消息 .sp .LP 缺省错误消息取决于涉及的验证类型。消息将告知用户长度或模式不符。缺省错误消息为: .sp .in +2 .nf example% \fB/usr/sadm/bin/errstr\fR ERROR: Please enter a string which contains no embedded, leading or trailing spaces or tabs. .fi .in -2 .sp .LP \fB示例 3 \fR缺省帮助消息 .sp .LP 缺省帮助消息也取决于涉及的验证类型。如果已定义正则表达式,则消息为: .sp .in +2 .nf example% \fB/usr/sadm/bin/helpstr \fR\fB-r\fR\fB regexp\fR Please enter a string which matches the following pattern: regexp .fi .in -2 .sp .sp .LP 其他消息将定义长度要求和字符串定义。 .LP \fB示例 4 \fR使用退出选项 .sp .LP 如果选择了退出选项(并且经过允许),将返回 \fBq\fR 以及返回代码 \fB3\fR。退出输入时会添加一个结尾换行符。 .LP \fB示例 5 \fR使用 valstr 模块 .sp .LP \fBvalstr\fR 模块将生成有关标准错误的使用消息。如果成功,将返回\fB0\fR ;如果失败,将返回非零值。 .sp .in +2 .nf example% \fB/usr/sadm/bin/valstr\fR usage: valstr [\fB-l\fR length] [[\fB-r\fR regexp] [\|.\|.\|.\|]] input .fi .in -2 .sp .SH 退出状态 .sp .LP 将返回以下退出值: .sp .ne 2 .mk .na \fB\fB0\fR\fR .ad .RS 5n .rt 成功执行。 .RE .sp .ne 2 .mk .na \fB\fB1\fR\fR .ad .RS 5n .rt 输入中出现 \fBEOF\fR、\fB-W\fR 选项中的宽度为负数或者用法错误。 .RE .sp .ne 2 .mk .na \fB\fB2\fR\fR .ad .RS 5n .rt 正则表达式无效。 .RE .sp .ne 2 .mk .na \fB\fB3\fR\fR .ad .RS 5n .rt 用户终止(退出)。 .RE .SH 属性 .sp .LP 有关下列属性的说明,请参见 \fBattributes\fR(5): .sp .sp .TS tab() box; cw(2.75i) |cw(2.75i) lw(2.75i) |lw(2.75i) . 属性类型属性值 _ 可用性system/core-os .TE .SH 另请参见 .sp .LP \fBsignal.h\fR(3HEAD)、\fBattributes\fR(5)