newform [ -s ] [ -f ] [ -a [ Number ] ] [ -b [ Number ] ] [ -c [ Character ] ] [ -e [ Number ] ] [ -i [ TabSpec ] ] [ -l [ Number ] ] [ -o [ TabSpec ] ] [ -p [ Number ] ] [ File ... ]
newform 命令从由 File 参数(缺省情况下为标准输入)指定的文件中读取多行,然后将格式化后的行写入标准输出中。根据有效的命令行标志,行需要重新格式化。
除了 -s 标志,您可以以任何顺序输入命令行标志,可以重复,也可以和 File 参数混合使用。然而,系统按您指定的顺序处理命令行标志。例如,-c 标志修改 -a 和 -p 标志的行为,所以试图更改 -p 或 -a 标志之前指定 -c 标志。 -l(小写字母 l)标志修改 -a、-b、-e 和 -p 标志的行为,所以试图更改这些标志之前指定 -l 标志。例如,像标志序列 -e 15 -l 60 产生的结果和标志序列 -l 60 -e 15 产生的结果就不一样。 标志可以应用到命令行所指定的所有文件中。
出口值为 0 表示正常执行;出口值为 1 表示出现错误。
-a [ Number ] | 当行的长度小于有效的行长度时,将指定的字符数添加到行尾。如果没有指定数值,则 -a 标志默认为 0,并且添加获得有效的行长度所必需的字符数。同时请参考 -c [ Character ] 和 -p [ Number ] 标志。 |
-b [ Number ] | 如果行的长度大于有效的行长度,那么从行的开头截掉指定的字符数。如果该行包含少于 Number 参数指定值的字符数,那么整个行将被删除并在此处显示一个空白行。同时请参考 -I [ Number ] 标志。如果指定了 -b 标志但未指明 Number 变量,缺省操作将截掉获得有效的行长度所必需的字符数。
该标志能够用来从 COBOL 程序中删除序列号,如下所示: newform -l1-b7 file-name -l1 标志必须用来设置有效的行长度,这个长度比文件中任何现有的行都要短,这样 -b 标志才能被激活。 |
-c [ Character ] | 将 prefix/add 字符更改为由 Character 变量指定的字符。如果在 -a 和 -p 标志之前指定,缺省字符是空格并且可用。 |
-e [ Number ] | 从行尾截掉指定的字符数。否则,该标志和 -b [ Number ] 标志相同。 |
-f | 在写任何其它行之前,将制表符规范格式行写入标准输出。显示的制表符规范格式行和由最终的 -o 标志指定的格式相符合。如果没有 -o 标志被指定,那么显示的行会包含 -8 的缺省规范。 |
-i [ TabSpec ] | 用由 TabSpec 变量指定的空格数替换输入中所有的制表符。
该变量能够标识所有的在 tabs 命令中描述的制表符规范格式。 如果为 TabSpec 变量的值指定一个 -(减号),那么 newform 命令会假定能在从标准输入读取的第一行中找到制表符规范。 TabSpec 的缺省值是 -8。TabSpec 值为 -0 时不需要制表符。如果找到任何制表符,则认为其值为 -1。 |
-l [ Number ] | 将有效的行长度设置为指定的字符数。 如果 Number 变量没有被指定,则 -l 标志缺省值为 72。没有 -l 标志的缺省行长度是 80 个字符。注意制表符和退格键被认为是一个字符(使用 -i 标志将制表符扩展为空格)。您必须在指定 -b 和 -e 之前指定 -l 标志。 |
-o [ TabSpec ] | 根据给定的制表符规范,在输出中用制表符替换输入中的空格。TabSpec 的缺省值是 -8。TabSpec 的值为 -0 时意味着在输出中没有空格可以转换为制表符。 |
-p [ Number ] | 当行的长度小于有效的行长度时,在该行的开头附加指定的字符数。缺省操作是附加获得有效行长度所必需的字符数。同时请参考 -c 标志。 |
-s | 删除每行的前导字符直到出现第一个制表符,并且将被删除的最多 8 个字符放置在行尾。如果多于 8 个字符被删除(不包含第一个制表符),那么第 8 个字符被 *(星号)替换,并且它右边的所有字符被废弃。第一个制表符总是被废弃。
删除的字符在内部被保存,直到所有其它的指定标志应用于该行。然后将这些字符添加到被处理行的尾部。 |
要按以下内容从一个文件转换:
到另一个文件:
输入以下内容:
newform -s -i -l -a -e filename
如果将 -s 标志用于每一行都没有制表符的文件中,则 newform 命令会显示以下错误消息并停止。
newform: 0653-457 文件不是由 -s 标志支持的格式。